前言
这个坑很少有人遇到,墙内墙外都找了不少资料看,几乎没看到同样的问题~_~
背景
项目有一个需求,结合Cordova和vue开发一个应用,app在离线的情况下启动时,需要首先去加载指定目录的文件读取数据,考虑到Android 6.0后权限时运行时申请赋予的,要加载文件肯定涉及文件存储的操作,所以依葫芦画瓢自定义了个插件(Cordova自定义插件 摸我),在js端访问权限授权的情况。
复盘
先贴我的代码 ,这是js侧访问权限的代码,Android原生的插件已确认没有问题
cordova.exec(success =>{
if ('success' == success) {
this.initData()
}else{
this.$toast('请先开启手机存储权限');
setTimeout(()=>{
this.requestPerimission()
},100)
}
}, fail =>{
}, "FileHandler", "requestpermission", [""]);
再看错误日志
D/SystemWebChromeClient: file:///android_asset/www/static/js/vendor.04fb6f8bbd2e524de801.js: Line 12 : TypeError: cordova.exec is not a function
03-20 16:57:43.558 18085-18
Cordova自定义插件cordova.exec报错解决

该博客讲述了结合Cordova和Vue开发应用时遇到的问题。项目需在离线启动时加载指定目录文件,为此自定义插件访问权限授权情况。但出现cordova.exec is not a function错误,经分析是调用插件时Cordova未执行完毕,Cordova.js未加载,最后给出解决方案。
最低0.47元/天 解锁文章

373

被折叠的 条评论
为什么被折叠?



