IONIC + cordova 相机在 android 上崩溃

IONIC + cordova camera crashing on android

我正在 运行使用相机安装 IONIC 应用程序。它在功能更强大的设备上运行良好,但在质量较低的设备上会使应用程序崩溃。我的研究告诉我,phone 一旦离开打开相机以节省内存,就会关闭应用程序。我已经减小了图像的大小和质量,但它仍然崩溃。

https://code.google.com/p/foreground-camera-plugin/

上面的插件是一个建议的解决方案,可以阻止应用程序关闭。但我无法让它工作,我想知道将它注入 IONIC 后如何工作。

所以我的问题是;有没有解决这个问题的有效解决方案,我不必分叉我的代码并将 运行 on IOS 和 android.

var options = {
                        quality: 50,
                        destinationType: Camera.DestinationType.DATA_URL,
                        sourceType: Camera.PictureSourceType.CAMERA,
                        allowEdit: true,
                        encodingType: Camera.EncodingType.JPEG,
                        correctOrientation: true,
                        targetWidth: 200,
                        targetHeight: 200,
                        popoverOptions: CameraPopoverOptions,
                        saveToPhotoAlbum: false
                    };
                    $ionicPlatform.ready(function ()
                    {
                        $cordovaCamera.getPicture(options).then(function (imageURI) {
                            $scope.updateDBImage(imageURI);
                            return true;

                        }, function (err) {
                            var Popup = $ionicPopup.alert({
                                title: 'Error!',
                                template: err
                            });
                        });
                    });

这是我正在使用的代码。

@Duovili!

把console.log(JSON.stringify(选项));在定义 'options' 之后。我遇到了类似的问题,然后我注意到 destinationType 未定义,这导致 json 类似于:

  {
   "quality" : 80,
   "sourceType" : 1,
   "allowEdit" : false,
   "encodingType" : 0,
   "saveToPhotoAlbum" : true
  }

没有 destinationType 值。那使我的应用程序崩溃了。

下午好,问题确实是内存不足,但是,即使设备有内存,根据型号也可能会出现此错误。我在 motoG8、Motog7Play、Motog2、Redmi note 7、Mi8 手机上进行了测试。在 MotoG8 和 MotoG7Play 手机上出现了错误,但是在 config.xml 中添加一行后,问题在 MotoG8 中消失,仅在 MotoG7Play 中存在。

行config.xml:

<preference name = "AndroidLaunchMode" value = "singleTask" />

观察:

我创建了一个错误报告来解释开发人员分析的情况,但是我没有收到他们的任何回复,我也把它贴在这里看看是否有人解决了它。 如果您已经解决了它,请告诉我如何解决。 Publish stack