此应用运行良好,大约在3周前发布在应用商店上。但是,现在当我使用Cordova媒体captureImage
功能时,它最终会黑屏并强制退出。
我实际上可以拍张照片,只有当我单击“使用照片”时,它才会崩溃。
我可以很好地录制和使用视频,这也让我感到困惑。
我很困惑为什么它突然停止工作? 同样,相同的代码也可用于android,效果很好。
我必须通过上传才能进行飞行测试,所以我没有选择USB调试的方法。
科尔多瓦版本: 8.1.2(cordova-lib@8.1.1)
XCode:版本10.1(10B61)
有人对我如何解决此问题有任何建议吗?
我已经为权限添加了适当的配置更改。
<edit-config file="*-Info.plist" mode="merge" target="NSCameraUsageDescription">
<string>My Reason..</string>
</edit-config>
<edit-config file="*-Info.plist" mode="merge" target="NSMicrophoneUsageDescription">
<string>My Reason..</string>
</edit-config>
<edit-config file="*-Info.plist" mode="merge" target="NSPhotoLibraryUsageDescription">
<string>My reason ..</string>
</edit-config>
这是我的JavaScript:
function takePicture(filePreview, multiUpload) {
var captureSuccess = function(mediaFiles) {
var i, path, len;
for (i = 0, len = mediaFiles.length; i < len; i += 1) {
path = mediaFiles[i].fullPath;
if (filePreview !== null) {
var image = document.getElementById(filePreview);
image.src = path;
}
}
};
// capture error callback
var captureError = function(error) {
//alert("oops");
};
// start image capture
if (multiUpload) {
navigator.device.capture.captureImage(captureSuccess, captureError, {
limit: 5
});
} else {
navigator.device.capture.captureImage(captureSuccess, captureError, {
limit: 1
});
return;
}
}
答案 0 :(得分:2)
它可能已删除了您的权限,但是请检查以确保您的info.plist文件中仍具有NSCameraUsageDescription,NSMicrophoneUsageDescription和NSPhotoLibraryUsageDescriptionentry。由于某种原因,当我更新项目时,它已经为我删除了它。