【发布时间】:2016-07-22 16:46:48
【问题描述】:
我在使用 Android 的 Ionic 上遇到了一个非常常见的问题(在 Cordova/PhoneGap 中也很常见),在低内存设备上,当您调用相机获取图片(或任何媒体意图)时,您的应用程序会运行背景并且经常被垃圾收集器关闭,然后在拍照后重新启动。 这是我用来调用相机的代码,带有 ngCordova 相机插件:
var options = {
quality: 75,
destinationType: Camera.DestinationType.FILE_URI,
//destinationType: Camera.DestinationType.DATA_URL,
sourceType: Camera.PictureSourceType.CAMERA,
allowEdit: true,
encodingType: Camera.EncodingType.JPEG,
targetWidth: 200,
targetHeight: 200,
popoverOptions: CameraPopoverOptions,
saveToPhotoAlbum: false
};
// This causes the app to go background
$cordovaCamera.getPicture(options).then(function (imageData) {
// do something with the picture
}, function (err) {
// do something with the error
});
我进行了广泛搜索,似乎只有 2 个可能的解决方案:
- 实现您自己的应用内摄像头,让您的应用永不消失 背景。
- 保存您的应用程序状态并在获取后恢复它 图片。
出于多种原因,我打算稍后进行,保存和恢复我的应用程序状态,这当然包括检索相机正在返回的图片数据。经过长时间的上下文描述,这是我的实际问题:
如何检索相机返回到我的应用程序的 imageData?
我可能缺乏一些基本的 Android 知识,但我相信相机应用正在向我的应用返回一个 Intent,所以我尝试使用这个 WebIntent 插件恢复它,但完全没有成功。
【问题讨论】:
标签: cordova ionic-framework camera