实战|使用环信Flutter SDK构建鸿蒙HarmonyOS应用及推送配置 ...

打印 上一主题 下一主题

主题 2039|帖子 2039|积分 6121

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本文为各人介绍如何在 Flutter 环境创建 Harmony 项目并集成环信即时通讯IM以及环信 Flutter Harmony 推送配置。
已经基于环信的 Flutter 项目也可以参考本文适配鸿蒙端。
一、开发环境要求

前置条件

1.安装DevEco-Studio
2.安装模仿器
DevEco-Studio 下载与操纵引导:
oh环境变量

  1. export TOOL_HOME=/Applications/DevEco-Studio.app/Contents # mac环境
  2. export DEVECO_SDK_HOME=$TOOL_HOME/sdk # command-line-tools/sdk
  3. export PATH=$TOOL_HOME/tools/ohpm/bin:$PATH # command-line-tools/ohpm/bin
  4. export PATH=$TOOL_HOME/tools/hvigor/bin:$PATH # command-line-tools/hvigor/bin
  5. export PATH=$TOOL_HOME/tools/node/bin:$PATH # command-line-tools/tool/node/bin
复制代码
Flutter 环境变量

  1. export PATH="$HOME/Settings/flutter/bin:$PATH"
复制代码
环境验证

  1. flutter doctor
复制代码
乐成效果

  1. [!] Flutter (Channel oh-3.22.0, 3.22.1-0.0.pre.32, on macOS 14.5 23F79
  2.     darwin-arm64, locale zh-Hans-CN)
  3.     ! Upstream repository git@gitee.com:harmonycommando_flutter/flutter.git is
  4.       not a standard remote.
  5.       Set environment variable "FLUTTER_GIT_URL" to
  6.       git@gitee.com:harmonycommando_flutter/flutter.git to dismiss this error.
  7. [✓] HarmonyOS toolchain - develop for HarmonyOS devices
  8. [✓] Android toolchain - develop for Android devices (Android SDK version 35.0.0)
  9. [✓] Xcode - develop for iOS and macOS (Xcode 16.0)
  10. [✓] Chrome - develop for the web
  11. [✓] Android Studio (version 2024.1)
  12. [✓] VS Code (version 1.97.2)
复制代码
至此说明环境已经搭建乐成
二、鸿蒙im_flutter_sdk快速入门

向已存在的项目中添加鸿蒙支持

需要先辈入到项目中,之后执行命令
  1. flutter create  --platforms=ohos .
复制代码
注意:后面有.
如果之前设置了org,此时大概会报org冲突,此时需要在命令中指定 org。
  1. flutter create  --platforms=ohos .
  2. --org="xxx.xxx"
复制代码
此中 xxx.xxx 为您 org 的名称。
新建支持鸿蒙的项目

  1. flutter create new_project_name --org="xxx.xxx" --platforms=ios,android,ohos
复制代码
添加 im_flutter_sdk

自 SDK 4.13.0 开始支持鸿蒙。若要在鸿蒙平台使用,需举行以下配置:
1、使用支持鸿蒙的 Flutter,详情请参见相关文档。
2、在工程的 pubspec.yaml 中添加 sdk 依赖。或在环信官网下载IM Flutter SDK
  1. im_flutter_sdk: ^4.13.0
  2. im_flutter_sdk_ohos:
  3.   git:
  4.     url: "https://github.com/easemob/im_flutter_sdk_oh.git"
  5.     ref: 1.5.3
复制代码
修改 useNormalizedOHMUrl 模式

因为 环信 sdk 只支持 useNormalizedOHMUrl模式,需要在你的项目中配置 useNormalizedOHMUrl 为 true
打开 app/ohos/build-profile.json5 文件,找到 app:products:, 并向此中添加 buildOption
  1. "products": [
  2.   {
  3.     "name": "default",
  4.     "signingConfig": "default",
  5.     "compatibleSdkVersion": "5.0.0(12)",
  6.     "runtimeOS": "HarmonyOS",
  7.     // 添加内容
  8.     "buildOption": {
  9.       "strictMode": {
  10.         "useNormalizedOHMUrl": true
  11.       }
  12.     }
  13.   }
  14. ]
复制代码
运行项目时需要先 build hap包。 执行
  1. flutter build hap --debug
复制代码
注意:使用Visual studio code 大概会出现识别不到harmony 模仿器的环境
进入项目运行
  1. flutter run
复制代码
选择要执行的装备
  1. [1]: sdk gphone64 arm64 (emulator-5556)
  2. [2]: iPhone 15 Pro (99ECBD72-FCB5-4FD1-ADC8-0E0D52AE9B70)
  3. [3]: Mac Designed for iPad (mac-designed-for-ipad)
  4. Please choose one (or "q" to quit):
复制代码
至此乐成集成了环信Flutter Harmony
三、推送配置

在Flutter层初始化的时候举行配置AppID

  1. EMOptions options = EMOptions.withAppKey(
  2.       "appkey",
  3.       extSettings: {
  4.         ExtSettings.kAppIDForOhOS: "appid",
  5.       },
  6.     );
复制代码
harmony 检查包名是否与开放平台一致
  1. project--->AppScope--->appjson5--->bundleName
复制代码
手动署名

手动署名参考华为开发文档
手动配置署名信息

1、点击DevEco Studio右上角的File 打开Project Structure窗口,进入Signing Config页签,取消勾选Automatically generate signature。
在Signing下分别配置密钥(.p12文件)、Profile(.p7b文件)和数字证书(.cer文件)的路径等信息。
2、勾选Show restricted permissions,即可看到配置乐成的权限。
3、配置完毕后,点击Apply。
4、进入工程级build-profile.json5文件,在signingConfigs下可检察到配置乐成的署名信息,点击右上角的Run按钮运行应用/元服务。
至此,我们完成了环信Flutter Harmony 集成与推送。通过本次环信Flutter Harmony项目标实践,我们不仅掌握了在Flutter环境下创建鸿蒙项目标根本流程,还深入相识了环信推送在鸿蒙系统上的配置与应用,这是一次富有挑战性和劳绩性的探索之旅。
资助文档:



  • 注册环信即时通讯IM
  • 环信IM集成文档
  • 环信即时通讯IM SDK下载

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

王國慶

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表