科尔多瓦/三星Galaxy SIII - 相机崩溃应用程序

oco*_*odo 8 samsung-mobile cordova

修正:SG3上默认为"不保持活动"

三星Galaxy S3默认启用"不要保持活动"(两个位置的测试模型都出现了这个故障)

当然,这意味着只要启动任何其他活动,包括来自您的Cordova/PhoneGap应用程序,您的应用程序的主要活动将被销毁.任何回调事件显然都不会触发.

关闭选项可解决问题.

检查开发人员选项,无论品牌/型号如何,例如华硕Nexus 7平板电脑没有此默认值.


我已经设置了一个基本的测试应用程序.其中有一个按钮和一个img标签+未经修改的Cordovaindex.js

按钮onclick正在调用capturePhoto():

function onPhotoURISuccess(imageURI) {
  console.log(imageURI);
  var largeImage = document.getElementById('largeImage');
  largeImage.style.display = 'block';
  largeImage.src = imageURI;
}

function capturePhoto() {
  navigator.camera.getPicture( onPhotoURISuccess, onFail, 
     { quality: 20, allowEdit: true, destinationType: Camera.DestinationType.FILE_URI });
}

function onFail(message) {
  alert('Failed because: ' + message);
}
Run Code Online (Sandbox Code Playgroud)

当我在模拟器和Asus Nexus 7平板电脑上运行应用程序时,相机会按预期打开,允许拍摄并确认照片,然后使用FILE_URI返回并设置图像src属性.

然而,在三星Galaxy SIII上,(我们正在两个不同位置进行测试)相机打开,允许捕获,并在确认后,尝试恢复测试应用程序并死亡.

有谁知道这个问题,有没有办法解决它?

仅供参考,我已经为AndroidManifest.xml活动节点添加了一个额外的设置:android:screenOrientation="nosensor"- 虽然这不能解决问题(在这里抓住稻草).

其他信息:

  • 手机正在运行Android 4.1.2
  • 瞄准sdk 16
  • Cordova v 2.4.0rc1

经过测试的phonegap版本 - 1.8 - 2.4rc(全部崩溃或无法返回图像.)

stacktrace的相关部分在这里:http://pastie.org/5974920

更新

  • 关于西蒙麦克唐纳的建议.

经过测试 quality : 100

与以前相同的结果.

  • 1.9-2.1炸弹(没有消息)
  • 2.2-2.3回到应用程序,但没有图像.
  • 2.4 - 抱歉应用程序已停止 - "管理"崩溃

没有工作.

oco*_*odo 7

在Samsung Galaxy 3 上,默认情况下,开发人员选项"不保持活动"处于启用状态.

当你启动任何其他活动时,这将垃圾收集你的主要活动,在这种情况下是相机.

关闭选项可以解决问题.