更新记录

5.6.11(2024-04-30) 下载此版本

支持荣耀推送,需要配合 RCUniIMV2 5.6.11-1 以上版本使用

5.6.10(2024-03-16) 下载此版本

1、适配 RCUniIMV2 插件最新版本 2、升级三方推送 SDK, vivo 3.0.0.7,oppo 3.4.0 3、新增获取推送 token 监听

5.4.0-2(2023-06-15) 下载此版本

修复华为推送报错的问题

查看更多

平台兼容性

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

原生插件通用使用流程:

  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原生插件配置”->”云端插件“列表中删除该插件重新选择


融云IM推送 Uni 原生插件

说明

本插件为融云 Push 原生插件,基于 RCUniIMV2 插件。支持 Android、iOS 消息离线推送。目前 Android 厂商推送支持 华为、小米、oppo、vivo、魅族。

使用步骤

1、将插件下载到本地,放入项目 nativeplugins 中,在项目 manifest.json --> App原生插件配置 --> 选择本地插件中勾选 RCUniPush 插件

2、在项目 manifest.json --> App模块配置 中勾选 Push 模块,但不要勾选下面的 unipush

3、配置推送参数

  • Android

    安卓需要申请厂商推送,并在融云开发者后台/应用配置/IM 服务/应用标识及推送设置配置相关参数,请参考文档:融云推送开发指南

    注意: 华为推送 和 荣耀推送 Activity 项需要配置为 io.dcloud.PandoraEntry 才能显示应用通知角标。

    开发者后台配置好推送参数之后,需要在初始化融云 IM 时,设置厂商推送的参数。

    import RCIMIWEngine from "@/uni_modules/RongCloud-IMWrapper-V2/js_sdk/RCIMEngine"
    
    // RCIMIWEngineOptions
    let options = {};
    // 以下参数按需配置
    let pushOptions = {
      idMI: '小米推送 appId',
      appKeyMI: '小米推送 appKey',
      appIdMeizu: '魅族推送 appId',
      appKeyMeizu: '魅族推送 appKey',
      appKeyOPPO: 'oppo推送 appKey',
      appSecretOPPO: 'oppo推送 appSecret',
      enableHWPush: true, // true 开启华为推送
      enableVIVOPush: true,  // true 开启 vivo 推送
      enableHonorPush: true, // true 开启 Honor 推送
    };
    options.pushOptions = pushOptions;
    // 推送功能总开关,设为 true 打开推送
    options.enablePush = true;
    // 初始化 IM
    let engine = await RCIMIWEngine.create(appKey, options);

    注意:

    • 华为vivo荣耀 推送需要分别在项目 manifest.json 的本地 RCUniPush 插件处配置 华为 appIdVIVO推送 appidVIVO推送 api_key荣耀推送 appid

    • 华为推送 需要 将官网下载的 agconnect-services.json 文件放到 nativeplugins/RongCloud-Push/android/assets/ 路径下,如没有 assets 目录,自己新建一个即可。

  • iOS

    iOS 需要申请推送证书,并在融云开发者后台配置推送相关信息,请参考文档:集成 APNs 远程推送

    iOS 集成插件后,会在 IM 初始化时自动上报 deviceToken,无需其他代码的配置。

4、重新制作包含 RCUniPush 插件的自定义基座。

5、获取推送的内容

此回调可在 app 启动时设置,目前只支持获取点击推送启动 app 时的推送内容,无法获取 app 后台运行时的推送内容。

const RCUniPush = uni.requireNativePlugin('RongCloud-Push-RCUniPush')

RCUniPush.setPushEventListener((data) => {
  console.log('setPushEventListener', data);
});

6、获取厂商推送 token

此回调只会在获取成功后回调。可通过此回调判断厂商推送是否集成成功

const RCUniPush = uni.requireNativePlugin('RongCloud-Push-RCUniPush')
// pushType: 0-iOS, 1-未知类型,2-融云推送,3-华为推送,4-小米推送,5-Google FCM 推送,6-Google GCM 推送,7-魅族推送,8-vivo 推送,9-oppo 推送, 10- Honor 推送
RCUniPush.setOnReceivedTokenListener(({pushType, pushToken}) => {
  console.log(`setOnReceivedTokenListener-pushType:${pushType}-pushToken:${pushToken}`);
});

隐私、权限声明

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

"android.permission.RECEIVE_USER_PRESENT", "android.permission.INTERNET", "android.permission.READ_PHONE_STATE", "android.permission.WRITE_EXTERNAL_STORAGE", "android.permission.READ_EXTERNAL_STORAGE", "android.permission.WRITE_SETTINGS", "android.permission.ACCESS_NETWORK_STATE", "android.permission.ACCESS_WIFI_STATE", "android.permission.VIBRATE", "android.permission.CHANGE_NETWORK_STATE","${applicationId}.permission.MIPUSH_RECEIVE", "com.coloros.mcs.permission.RECIEVE_MCS_MESSAGE", "com.heytap.mcs.permission.RECIEVE_MCS_MESSAGE","com.meizu.flyme.push.permission.RECEIVE"

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

融云隐私合规文档: https://docs.rongcloud.cn/v4/5X/views/im/noui/intro/privacy.html

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

许可协议

作者未提供license.md

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