鴻蒙flutter項目接入極光推送

推送的自分類權益 需要審核15個工作日,實際約3個工作日

項目使用極光推送flutter代碼,代碼端已經配置的東西(需要配置flutter端和對應各自平臺原生端),我的工程是多target,所以和單target有一點不同。

一、鴻蒙開發者網站上配置

1、鴻蒙AppGallery Connect上

  • 1)、團隊賬號需要添加成員,點擊右上角可切換自己和團隊角色
  • 2)、開通推送服務(立刻開通,使用V2版本)
  • 3)、推送服務-配置,開通應用回執狀態,(立刻開通)
  • 4)、推送服務-配置,開通自分類權益(15個工作日),需要填寫場景和文案
  • 5)、切換我的項目-對應應用,我使用HarmonyOS API9以上,所以點擊生成SHA256證書/公鑰指紋,點擊自動出現可供選擇的列表,選擇即可。
  • 6)、我的項目-對應應用,記住Client ID和包名,(極光網站上填寫配置需要用)

2、極光后臺網站上

  • 1)、推送設置-集成設置,點擊HarmonyOS的標簽,填寫應用包名,包名填寫后不可更改(1.6已記錄)
  • 2)、啟用HarmonyOS 默認標題,同其他android iOS 等一致即可
  • 3)記住AppKey,代碼集成到項目里會用到。

二、鴻蒙原生端

1、在鴻蒙原生工程下修改oh-package.json5,

  • (文檔上寫的是修改entry下的oh-package.json5,但是多target下需要修改項目級別的這個.json5文件)
  • 使用自動安裝, 添加
"dependencies": {"@jg/push": "1.2.1"
},
  • 終端執行ohpm install
  • 安裝成功極光推送的鴻蒙組件。

2、在entry下找到module.json5

  • 添加
"module": {"metadata": [{"name": "client_id","value": “去鴻蒙后臺查看client_id”}
]
}

3、修改build-profile.json5

  • 添加"useNormalizedOHMUrl": true (此參數已在添加阿里云上傳的時候加了)
 "products": [{"name": "default","signingConfig": "default","compatibleSdkVersion": "5.0.0(12)","runtimeOS": "HarmonyOS"},{"name": "target1","vendor": "hhh","versionCode": 1,"versionName": "1.1.0","signingConfig": "--","compatibleSdkVersion": "5.1.0(18)","runtimeOS": "HarmonyOS","bundleName": "--","buildOption": {"arkOptions": {"buildProfileFields": {"appType": "--"}},"strictMode": {"caseSensitiveCheck": true,"useNormalizedOHMUrl": true}}},],

三、flutter工程端

1、去網站下載flutter工程

  • 我使用flutter3.22需要下載3x版本(切換分支dev-3.x)(已經支持ohos了)
    下載地址
  • 查看提交的tag鴻蒙最新版本是1.2.1
  • 下載完后放入flutter工程目錄的plugins文件夾下。(文件夾可以自己定義,我使用plugins)

2、配置pubspec.yaml 文件和安裝插件

  • 使用jpush自定義路徑。插件名是jpush_flutter(和下載的極光推送插件的pubspec.yaml中name定義的保持一致)
dependencies:jpush_flutter:path: ./plugins/jpush-flutter-plugin-dev-3.x/  
  • 執行 flutter pub get

3、我使用的是vscode,安裝完必須重啟vscode

  • 否則import會報錯
import 'package:jpush_flutter/jpush_flutter.dart';
import 'package:jpush_flutter/jpush_interface.dart';

4、打開下載的jpush項目參考demo寫法

  • 打開項目jpush-flutter-plugin-dev-3.x/example/lib/main.dart,查看已無報錯。

  • 根據這里的寫法,改寫flutter項目中lib/main.dart

5、打開ohos工程修改推送相關

  • 修改main/ets/EntryAbilliy.ets,參考example中ohos下的EntryAbilliy.ets

  • (注意這里有個問題onCreate不是async方法,例子當中使用了promise return的時候會報錯)

四、測試推送

  • 1、運行flutter程序,自動彈出是否允許推送授權彈窗。
  • 2、打開極光推送后臺,編輯推送HarmonyOS 平臺的配置
  • 3、 必填廠商特殊設置,(鴻蒙廠商的消息類型標識,需要申請鴻蒙自分類權益,審核默認15天)
  • 自分類權益對應Push API的 notification.hmos.category 字段。

五、推送說明

  • 未申請自分類權益默認都是營銷類消息,極光推送發送推送時,廠商配置category需要填寫MARKETING,每日每臺設備限制推送2條。

  • 申請自分類權益,工作事項通知。申請需要審核15個工作日,實際3個工作日給答復,通過后發送此類推送場景不可變,如果場景變了需要增加申請。推送數量無限制。

  • 證書必須使用個人創建的,不能使用auto自動生成的,否則推送不成功會報錯token失效。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/92939.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/92939.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/92939.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

2025牛客多校第八場 根號-2進制 個人題解

J.根號-2進制 #數學 #FFT 思路 賽后發現身邊的同學都是通過借位來解決進位問題的,在此提供一種全程不出現減法的順推做法 首先A,BA,BA,B可以理解為兩個多項式:A0A1?2A2(?2)2…A_{0}A_{1}\sqrt{ -2 }A_{2}(\sqrt{ -2 })^2\dotsA0?A1??2?A2?(?…

DataEase官方出品丨SQLBot:基于大模型和RAG的智能問數系統

2025年8月7日,DataEase開源項目組發布SQLBot開源項目(github.com/dataease/SQLBot)。SQLBot是一款基于大語言模型(Large Language Model,LLM)和RAG(Retrieval Augmented Generation,…

第十四節 代理模式

在代理模式(Proxy Pattern)中,一個類代表另一個類的功能。這種類型的設計模式屬于結構型模式。在代理模式中,我們創建具有現有對象的對象,以便向外界提供功能接口。介紹意圖:為其他對象提供一種代理以控制對…

訓推一體 | 暴雨X8848 G6服務器 x Intel?Gaudi? 2E AI加速卡

近日,暴雨信息攜手英特爾,針對Gaudi 2E AI加速器HL-288 PCIe卡(簡稱IntelGaudi 2E PCIe卡,下同)完成專項調優與適配工作,并重磅推出Intel Eagle Stream平臺4U8卡解決方案。該方案通過軟硬件協同優化&#x…

GB17761-2024標準與電動自行車防火安全的技術革新

隨著我國電動自行車保有量突破3.5億輛,這一便捷的交通工具已成為城市出行的重要組成。然而,伴隨市場規模擴大而來的是日益突出的安全問題——2023年全國電動自行車火災事故高達2.5萬起,年均增長率約20%,火災中塑料件加速燃燒并釋放…

利用容器編排完成haproxy和nginx負載均衡架構實施

1 創建測試目錄和文件[rootdocker-a ~]# mkdir lee [rootdocker-a ~]# cd lee/ [rootdocker-a lee]# touch docker-compose.yml # 容器編排工具Docker Compose 默認識別docker-compose.yml文件2 編寫docker-compose.yml文件和haproxy.cfg文件2.1 核心配置說明2.1.1 服務結構共定…

WinRAR v7.13 烈火漢化穩定版,解壓縮全格式專家

[軟件名稱]: WinRAR v7.13 烈火漢化穩定版 [軟件大小]: 3.8 MB [下載通道]: 夸克盤 | 迅雷盤 軟件介紹 WinRAR 壓縮文件管理器,知名解壓縮軟件,電腦裝機必備軟件,國內最流行最好用的壓縮文件管理器、解壓縮必備軟件。它提供 RAR 和 ZIP 文…

強化學習常用數據集

強化學習常用數據集數學推理數據集數值標簽GSM8K(2021 OpenAI)問答數據集在LLM場景下進行強化學習訓練的時候,時常會涉及到各種各樣的數據集,容易記不住,因此開個帖子記錄一下。可采取的分類方法有很多,這里直接按照領…

ROS2學習(1)—基礎概念及環境搭建

文章目錄核心框架環境搭建小烏龜機器人控制小烏龜啟動鍵盤控制啟動rqt查看ros節點關系核心框架 這里有幾個比較重要的概念: 四大通信機制:話題(Topic)、服務(Service)、動作(Action&#xff09…

基于STM32單片機超聲波測速測距防撞報警設計

1 系統功能介紹 本設計是一套基于 STM32F103C8T6 單片機 的超聲波測速測距防撞報警系統,能夠實現對目標物體的實時測距與測速,并通過 TFT 彩屏進行動態顯示,同時根據用戶設定的距離與速度閾值進行報警提示。該系統不僅可以用于固定場景的安全…

麒麟系統播放 pptx

目錄 python 操作 LibreOffice 控制pptx 一頁一頁播放 1. 安裝 LibreOffice(麒麟系統基于 Debian/Ubuntu) 2. 如果只想安裝 PPT 播放/轉換(Impress) 1. 啟動 LibreOffice UNO 服務 2. Python 控制播放uno安裝方法&#xff1a…

嵌入式Linnux學習 -- 軟件編程2

四、IO1. 概念1. IO 指 input / output2. Linux系統中一切皆是文件3. IO操作的對象是文件2. 文件1. 概念一段數據的集合2. 特點文件通常存放在外存中,掉點后數據不會丟3. 分類b(block,塊設備文件)-- 按塊掃描信息的文件&#x…

Spark02 - SparkContext介紹

一、應用入口:SparkContextSpark Application 程序入口為:SparkContext,任何一個應用首先需要構建 SparkContext 對象,如下兩步構建:第一步、創建 SparkConf 對象設置 Spark Application 基本信息,比如應用…

Selenium動態元素定位

動態元素定位方法一:使用CSS選擇器通過部分匹配操作符定位動態屬性中的固定部分。*(包含),^(開頭),$(結尾)。/* 匹配id前綴為user_的元素 */ cssdiv[id^"user_"…

OBOO鷗柏丨115寸商用屏/工業液晶顯示器招標投標核心標底參數要求

整機參數要求:商用液晶顯示器/工業LCD一體機/商業智能終端機/工業防爆顯示器/招標投標核心標底參數要求1、整機屏幕采用≥采用115英寸超高清原廠原包原裝工業LCD液晶屏面板;具有高色域,顯示動態視頻、web及3D動畫時,保障運動畫面流…

麻溜啟動Oracle實例demo

注意:鏡像非常大并且外網網絡過慢,可能得pull一天(n次超時)。。md后臺靜默pull命令: nohup docker pull container-registry.oracle.com/database/express:latest > pull.log 2>&1 & 啟動實例&#xff1…

應用監控工具Skywalking

目錄 Skywalking介紹 Skywalking架構 Skywalking安裝 Skywalking使用 Skywalking配置 Skywalking數據持久化 Skywalking告警 Skywalking介紹 Apache Skywalking是一個開源的應用性能監控(Application Performance Monitoring,APM)工具…

TCP服務建立的全流程詳解

TCP的服務監聽步驟(等待客戶端連接前)TCP 服務器通過以下步驟完成從初始化到等待客戶端連接,為后續的數據傳輸(send()/recv())奠定了基礎一、創建套接字(Socket)作用:套接字是網絡通…

數據結構 雙鏈表與LinkedList

本節目標: 認識并且能夠實現一個雙鏈表認識LinkedList類并且知道如何去使用 1.雙鏈表 概念 在數據結構中,雙鏈表(Doubly Linked List) 是一種常見的線性數據結構,它由一系列節點組成,每個節點不僅包含數據…

如何解決 JetBrains IntelliJ IDEA 2024.2 和 2025.2 新版本區域選擇問題:key is invalid

如何解決 JetBrains IntelliJ IDEA 2024.2 和 2025.2 新版本區域選擇問題:key is invalid 在 JetBrains 發布的 IntelliJ IDEA、PyCharm 2024.2 和 2025.2 新版本中,增加了一個新的功能——區域選擇。在設置菜單中,你可以找到這一選項&#…