p***@nadeit.com
p***@nadeit.com
  • 发布:2022-09-30 10:27
  • 更新:2023-08-22 15:37
  • 阅读:2650

使用plus.io.resolveLocalFileSystemURL 读取相对路径doc文件夹,真机调试可以,打包app后没反应

分类:HTML5+

使用plus.io.resolveLocalFileSystemURL 读取相对路径doc文件夹,android真机调试可以,云打包apk后没反应
是否是哪里缺少配置?

1、代码:
methods: {
getDirList(){
var _that =this
plus.io.resolveLocalFileSystemURL(
"../doc/", //指定的目录
function(entry) {
var directoryReader = entry.createReader(); //获取读取目录对象
directoryReader.readEntries(
function(entries) { //历遍子目录即可
console.log("图片数量="+entries.length)
// 上传图片至OBS服务器
_that.getUploadFile(entries);
},
function(err) {
console.log("访问目录失败");
});
},
function(err) {
console.log("访问指定目录失败:" + err.message);
}
);
},

2、尝试加了各种权限
配置:
/ 5+App特有相关 /
"permissions" : {
"File" : {
"description" : "文件夹"
}
},
"app-plus" : {
"usingComponents" : true,
"nvueStyleCompiler" : "uni-app",
"compilerVersion" : 3,
"compatible" : {
"ignoreVersion" : true //true表示忽略版本检查提示框,HBuilderX1.9.0及以上版本支持
},
"splashscreen" : {
"alwaysShowBeforeRender" : false,
"waiting" : false,
"autoclose" : true,
"delay" : 0
},
/ 模块配置 /
"modules" : {
"OAuth" : {},
"Maps" : {}
},
"permissions" : {
"File" : {
"description" : "文件夹"
}
},
/ 应用发布信息 /
"distribute" : {
/ android打包配置 /
"android" : {
"permissions" : [
"<uses-feature android:name=\"android.hardware.camera\"/>",
"<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
"<uses-permission android:name=\"android.permission.CAMERA\"/>",
"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
"<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
"<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
"<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>",
"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
"<uses-permission android:name=\"android.permission.READ_EXTERNAL_STORAGE\"/>",
"<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
"<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
"<uses-permission android:name=\"android.permission.VIBRATE\"/>",
"<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
"<uses-permission android:name=\"android.permission.WRITE_EXTERNAL_STORAGE\"/>",
"<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
],
"permissionExternalStorage" : {
"request" : "always",
"prompt" : "应用保存运行状态等信息,需要获取读写手机存储(系统提示为访问设备上的照片、媒体内容和文件)权限,请允许。"
}
},
"runmode" : "liberate", // 开启分包优化后,必须配置资源释放模式

2022-09-30 10:27 负责人:无 分享
已邀请:
p***@nadeit.com

p***@nadeit.com (作者)

plus.io.resolveLocalFileSystemURL(
"../doc/", //指定的目录
这里目录路径写法错了

改为使用“_doc”的标准写法即可

  • 烟城小能手

    打包后,改成_doc就提示读取目录失败了。。。

    2022-12-27 14:42

w***@outlook.com

w***@outlook.com

兄弟这个解决了吗

2***@qq.com

2***@qq.com

解决了吗

2***@qq.com

2***@qq.com

打包之后找不到_doc下面的uniapp_save文件夹 要先判断一下手机是否存在改文件夹 存在就下载 不存在创建一个

plus.io.resolveLocalFileSystemURL(plus.io.convertAbsoluteFileSystem('_doc/uniapp_save'), entry => {
// console.log(entry, 'entry')
// 有的话就不创建了
// uni.hideLoading()
}, err => {
// console.log(err, 'err', getApp())
// 没有的话进行创建 这里可以拿到err里面的code值进行判断是不是没有文件夹
// url就是你要创建的文件夹目录比如 医疗/器材/针管
let url = "_doc/uniapp_save"
// 在应用私有目录下进行创建
plus.io.requestFileSystem(plus.io.PRIVATE_DOC, fs => {
let entry = fs.root // 拿到操作对象
// 进行创建 {create:true,exclusive:false}这个是必须写的
entry.getDirectory(url, {
create: true,
exclusive: false
}, res => {
// console.log('创建成功', res.data)
// uni.hideLoading()
// getApp().globalData.tempphotoObj=res;
// 创建成功
}, err => {
// console.log(err, '创建失败');
})
})

要回复问题请先登录注册