【发布时间】:2018-02-18 23:02:02
【问题描述】:
我正在构建允许人们发布图片和视频的应用程序,主要是尝试了解 ionic、cordova、android 等,但出于某种原因,每当我尝试使用 cordova File 插件打开文件时,它都不会'不询问用户访问存储的权限,代码失败,用户卡在加载屏幕上。 代码非常简单,他们拍摄视频,对其进行转码,然后将转码后的文件上传到 Firebase 存储桶。如果我退出应用程序,请转到设置->应用程序->我的应用程序->权限,然后手动打开存储权限,它可以工作。问题是,我需要在运行时或安装时询问用户许可,但它没有。这是代码..
this.media.captureVideo().then(file => {
this.editor.transcodeVideo({
fileUri: file[0].fullPath,
outputFileType: this.editor.OutputFileType.MPEG4,
outputFileName: 'temp_test',
saveToLibrary: false,
height: 800,
width: 800,
maintainAspectRatio: false
}).then(fileUri => {
let pathIndex = fileUri.lastIndexOf('/'),
finalPath = 'file://' + fileUri.substr(0, pathIndex),
name = fileUri.substr(pathIndex + 1, fileUri.length);
this.file.readAsArrayBuffer(finalPath, name).then(file => {
//upload
}).catch(err => { console.log(err); });
});
});
但是,这只有在我打开手机上的设置、转到应用程序、我的应用程序、权限,然后手动启用存储时才有效。有没有办法在离子中请求许可?我已经搜索和搜索,我能找到的所有答案都是特定于相机的,或者在 Java 中工作,但 ionic 不是 Java。谢谢。
【问题讨论】:
-
你可以使用cordova.plugins.diagnosti插件
标签: android cordova permissions ionic2