我正在尝试在我的应用程序中使用设备相机,但是显示错误并且未显示相机。 错误是
无法为本地存储创建文件
我的控制器代码是
function choosePhotoDialogClicked(e) {
if (Ti.Media.hasCameraPermissions) {
openCamera();
}else {
alert("No camera permission. Asking for Permission");
Ti.Media.requestCameraPermissions(function(e) {
alert('request result'+JSON.stringify(e));
if (e.success === true) {
openCamera();
} else {
alert("Access denied, error: " + e.error);
}
});
}
}
function openCamera(){
Ti.Media.showCamera({
allowEditing: true,
saveToPhotoGallery: true,
mediaTypes: [Titanium.Media.MEDIA_TYPE_PHOTO],
success: function(event) {
writeFile = Ti.Filesystem.getFile(Ti.Filesystem.applicationCacheDirectory, 'ana.png');
writeFile.write(event.media);
$.addNewPhoto.setTitle('اضافة صورة اخرى');
},
error: function(error) {
alert('showcamera error ->'+JSON.stringify(error));
//alert('خطأ في اعدادات الكاميرا');
}
});
}
和tiapp.xml显示代码
<android xmlns:android="http://schemas.android.com/apk/res/android">
<manifest>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
<application>
<activity
android:name="ti.modules.titanium.media.TiCameraActivity"
android:configChanges="keyboardHidden|orientation"
android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" />
</application>
<application android:theme="@style/Light"/>
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="23"/>
</manifest>
</android>
任何帮助将不胜感激
答案 0 :(得分:0)
这是Android Permissions的一个问题,Fokke和该团队几个月前为Marshmallow做了一个博客。