更新记录

1.0.2(2024-04-07)

一、打包报错问题处理 二、分享文件格式增加

1.0.1(2023-08-25)

一、增加ios分享

1.0.0(2023-08-23)

首次提交

查看更多

平台兼容性

Android Android CPU类型 iOS
适用版本区间:5.0 - 12.0 armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 适用版本区间:9 - 16

原生插件通用使用流程:

  1. 购买插件,选择该插件绑定的项目。
  2. 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
  3. 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
  4. 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
  5. 开发完毕后正式云打包

付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios

注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择


app添加“用其他应用打开”中、系统分享、获取分享的文件或者链接 【请先测试是否符合需求】 不喜勿喷!

1、插件说明

app添加“ 微信、QQ 用其他应用打开”中、系统分享列表中、获取分享的文件或者链接 本插件支持安卓、ios双端

2、代码示例

在项目App.vue的onShow事件中调用即可
<script>
export default {
    onLaunch: function() {

    },
    onShow: function() {
        this.initReceive() // 在这里监听即可
    },
    onHide: function() {
        console.log('Suapp Hide');
    },
    globalData: {
        startTime: new Date().getTime()
    },
    methods: {
        shareTest() {
            const shareTool = uni.requireNativePlugin('Hd-FileHandler');
            let filePath = plus.io.convertLocalFileSystemURL('_www/static/logo.png');
            shareTool.shareFile(filePath);
        },
        /**
         * 初始化
         * @param {void} 
         */
        initReceive() {
            // #ifdef APP-PLUS
            if (this.isAndroid()) {
                const plugin = uni.requireNativePlugin('Hd-FileHandler');
                plugin.handleReceivedContent(result => {
                    if (result && result['code'] === 0) {
                        uni.showModal({
                            title: '温馨提示',
                            content: `收到文件 ${result.FileName} 是否转发给他人 ?`,
                            success: function(res) {
                                if (res.confirm) {

                                }
                            }
                        });
                    }
                });
            }

            if (this.isIos()) {
                //app离线通过这个获取分享数据
                let result = plus.runtime.arguments
                console.log("app离线" + JSON.stringify(result))
                if (result) {
                    uni.showModal({
                        content: "app离线" + JSON.stringify(plus.runtime.arguments)
                    })
                    plus.runtime.arguments = ''
                }
                const plugin = uni.requireNativePlugin('Hd-FileHandler');
                plugin.getShareData(res => {
                    console.log("app在线" + JSON.stringify(res))
                    if (res && res['code'] === 1) {
                        uni.showModal({
                            content: "app在线" + JSON.stringify(result)
                        })
                    }
                })
            }
            // #endif
        },
        /**
         * 判断是否为Ios
         * */
        isIos() {
            return uni.getSystemInfoSync().platform == 'ios'
        },
        /**
         * 判断是否为Android
         * */
        isAndroid() {
            return uni.getSystemInfoSync().platform == 'android'
        }
    }
};
</script>
就这样就完了 ?? 是不是很 so容易

作者 wx:petalmailo

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问