项目背景:uniapp 项目三端部署,项目中有一个 上传文件的功能,需要调用原生的 文件管理器,本来是用原生插件 但是最终拿不到,原生文件管理acticity 的 返回:
onActivityResult(int requestCode, int resultCode, Intent intent)
就是 上面这句话 不会调用:最后看到论坛上面写道:可以在 js 中访问文件管理器,并且接收到 返回:
在 js 中设置:main.onActivityResult
var main = plus.android.runtimeMainActivity();
main.onActivityResult = function(requestCode, resultCode, data) {
具体的使用:
pickFile.PickFile((path) => {
//返回的路径
this.$emit('result', 'file:///' + path)
}, '*/*')
核心工具脚本: pickFile.js
/* eslint-disable */
var pickFile = {
//调用原生文件系统管理器并选取文件获取文件地址
PickFile