更新记录

0.0.4(2021-10-14)

限制androidx.core:core-ktx版本为1.6.0,解决新版导致的报错

0.0.3(2021-03-31)

  • 更改mars中libc++_shared.so的soname,解决云端打包崩溃问题

0.0.2(2021-03-29)

  • 创建项目
  • 实现登录
  • 所有事件监听
  • 解决云端打包lib冲突
查看更多

平台兼容性

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

原生插件通用使用流程:

  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 的即时通讯 SDK

野火im是一套开源通用的即时通讯组件,能够更加容易地赋予客户im能力,使客户可以快速的在自有产品上添加聊天功能。

本插件在野火AndroidSDK中chatModule的基础上封装了相关方法和事件侦听,目前只实现了基本的登录和所有事件侦听,本人将项目开源到github,希望和大家一起交流学习。

  • 野火 im 文档:https://docs.wildfirechat.net/
  • 野火安卓 SDK 源码:https://github.com/wildfirechat/android-chat
  • 野火后端源码:https://github.com/wildfirechat/server
  • 本插件源码:https://github.com/PentaTea/wildfire-uniplugin-demo

  • 本项目遵循野火安卓 SDK 的 CC3.0-BY-ND协议,未修改 SDK 内部代码
  • 本项目依然使用CC3.0-BY-ND协议
  • 感谢大佬 Destiny_Xue 对我的指导,本项目最初的框架和登录功能就是他封装的

使用教程

使用野火im需要先去搭建野火后端服务,请参考野火im文档

引用方式

this.wildfire = uni.requireNativePlugin('PentaTea-Wildfire')

初始化

init方法会为所有事件添加监听器并释放事件消息队列。所以一定要在 init 之前监听 wildfire 事件,否则无法获得 init 之前的事件

具体事件名称和参数定义请参考ChatManager.java

;(plus as any).globalEvent.addEventListener(
  'wildfire',
  (e: {timestamp: number; data: [string, any] | [string, any, any]}) => {
    //处理事件
    //data数组中第一个元素是事件名称,从第二个开始是事件参数
  }
)

//获得clientId用于申请token
var info: {clientId: string; platform: number} = this.wildfire.init()

连接服务器

需要先在服务端创建新用户并使用 clientId 获取 token

this.wildfire.connect({
  userId: this.id,
  token: this.token
})

示例工程

下载后购买本插件,填写配置好野火的服务器地址即可运行

隐私、权限声明

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

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <uses-permission android:name="android.permission.GET_TASKS" /> <uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />

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

由于野火im服务端由用户搭建,所以基础功能不采集数据 野火专业版和语音视频通话相关功能可能会采集用户数据并涉及到购买服务 如需使用请参考 野火im文档 https://docs.wildfirechat.net/ 野火音视频简介 https://docs.wildfirechat.net/blogs/%E9%87%8E%E7%81%AB%E9%9F%B3%E8%A7%86%E9%A2%91%E7%AE%80%E4%BB%8B.html

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

许可协议

请参考开源项目地址的开源协议

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