我正在尝试上传图片。以前,它一切正常。突然间它现在停止在Android上工作了。在iOS上测试相同的代码,工作正常。
用例: 1.单击按钮 - 打开相机(或可以从库中选择) 2.拍摄图像 3.按'确定'按钮 - 应用程序崩溃
我清除了大量内存,认为某些设备可能存在内存问题。根据新发行说明添加了相机权限,仍然面临问题。这是我的代码:
var dialog = Ti.UI.createOptionDialog({
options : ['Camera', 'Gallery', 'Cancel'],
title : 'Upload image using?'
});
dialog.show();
dialog.addEventListener('click', function(e) {
if (e.index === 0) {
//Open Camera
Ti.Media.showCamera({
saveToPhotoGallery : true,
success : function(event) {
console.error('UPLOAD IMAGE SUCCESS ', JSON.stringify(event));
callback(event.media);
},
cancel : function(err) {
console.error('UPLOAD IMAGE CANCEL ', JSON.stringify(err));
},
error : function(err) {
console.error('UPLOAD IMAGE ERROR ', JSON.stringify(err));
},
showControls : true,
mediaTypes : Ti.Media.MEDIA_TYPE_PHOTO,
autohide : true
});
} else if (e.index === 1) {
//Open gallery
Ti.Media.openPhotoGallery({
success : function(event) {
console.error('UPLOAD IMAGE SUCCESS ', JSON.stringify(event));
callback(event.media);
},
cancel : function(err) {
console.error('UPLOAD IMAGE CANCEL ', JSON.stringify(err));
},
error : function(err) {
console.error('UPLOAD IMAGE ERROR ', JSON.stringify(err));
},
});
} else {
// Do nothing
}
dialog.hide();
});
tiapp.xml
<manifest>
<uses-permission android:name="android.permission.CAMERA" />
</manifest>
任何人都可以告诉代码有什么问题,还是我需要添加其他内容?
一些日志:
[DEBUG] : skia: --- SkImageDecoder::Factory returned null
[DEBUG] : skia: --- SkImageDecoder::Factory returned null
[DEBUG] : skia: --- SkImageDecoder::Factory returned null
[DEBUG] : skia: --- SkImageDecoder::Factory returned null
[DEBUG] : skia: --- SkImageDecoder::Factory returned null
[DEBUG] : Window: Window is closed normally.
答案 0 :(得分:0)
要解决这个问题,我需要做两件事。
在tiapp.xml中添加
<manifest>
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera"/>
</manifest>
打开设置&gt;应用程序&GT;相机
这个我以前解决过,它开始工作了。