{"_id":"@cordova-ohos/cordova-plugin-huawei-push","_rev":"3-fbc25d5193342e096767c004c2052b27","name":"@cordova-ohos/cordova-plugin-huawei-push","dist-tags":{"latest":"1.0.3"},"versions":{"1.0.2":{"name":"@cordova-ohos/cordova-plugin-huawei-push","version":"1.0.2","keywords":["cordova","huawei-push","ecosystem:cordova","cordova-openharmony"],"author":{"name":"Huawei Device, Inc. Ltd. and","email":"马弓手"},"license":"Apache-2.0","_id":"@cordova-ohos/cordova-plugin-huawei-push@1.0.2","maintainers":[{"name":"luqi_tan","email":"295099422@qq.com"},{"name":"wanpengsz","email":"wanpengsz@163.com"},{"name":"xkh111","email":"xukaihui11@163.com"}],"bugs":{"url":"https://gitcode.com/OpenHarmony-Cordova/cordova-plugin-huawei-push/issues"},"dist":{"shasum":"e90c2fa8667e9b2d75bfaa7a068376c11eb77ced","tarball":"https://registry.npmjs.org/@cordova-ohos/cordova-plugin-huawei-push/-/cordova-plugin-huawei-push-1.0.2.tgz","fileCount":9,"integrity":"sha512-99Dwu+/EHh7fM8vCBAAJfT2hBPGBnUh3yV9/ZqnSPi33AYHOUPzWrw+jaEcnn6QXBV9NpH9hyT2XSwvdtNKPvw==","signatures":[{"sig":"MEUCIQD2xpMdc9WZR1ejqYKrs8LRp2Jkbglp14LaDKfkA2ubWQIgMu2KaBsXyT4kxTWkVDeF/2CZTk8kZTLXPDFlUKDwSAI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":32535},"cordova":{"id":"cordova-plugin-huawei-push","platforms":["ohos"]},"engines":{"cordovaDependencies":{"1.0.2":{"hcordova":">=1.0.0","@cordova-ohos/ohos":">=2.0.0"}}},"gitHead":"3d288af73d72adc050fdda19db15ce169aed6fe9","_npmUser":{"name":"wanpengsz","email":"wanpengsz@163.com"},"repository":{"url":"gitcode:OpenHarmony-Cordova/cordova-plugin-huawei-push","type":"git"},"_npmVersion":"9.6.2","description":"Cordova alipay Plugin","directories":{},"_nodeVersion":"20.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cordova-plugin-huawei-push_1.0.2_1773994748434_0.06795582537169165","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@cordova-ohos/cordova-plugin-huawei-push","version":"1.0.3","description":"Cordova Huawei Push Plugin","cordova":{"id":"cordova-plugin-huawei-push","platforms":["ohos"]},"repository":{"type":"git","url":"gitcode:CPF-Cordova/cordova-plugin-huawei-push"},"bugs":{"url":"https://gitcode.com/CPF-Cordova/cordova-plugin-huawei-push/issues"},"keywords":["cordova","huawei-push","ecosystem:cordova","cordova-openharmony"],"engines":{"cordovaDependencies":{"1.0.3":{"@cordova-ohos/ohos":">=2.0.0","hcordova":">=1.0.0"}}},"author":{"name":"Huawei Device, Inc. Ltd. and","email":"马弓手"},"license":"Apache-2.0","_id":"@cordova-ohos/cordova-plugin-huawei-push@1.0.3","gitHead":"cf2f1f7bbf5b4d7fec85d66143e36d7277275c9f","_nodeVersion":"22.0.0","_npmVersion":"10.5.1","dist":{"integrity":"sha512-ddqnSlDtaTFA+8S7sA3Q58EqD2TzqSmXQZyJdTdTQxKtnpRIBrNeAvEjT/FCru08pRS9IUcVg75IpJo9/OOxdg==","shasum":"c3844e4dcb2b8341911176be649dd055b52299ec","tarball":"https://registry.npmjs.org/@cordova-ohos/cordova-plugin-huawei-push/-/cordova-plugin-huawei-push-1.0.3.tgz","fileCount":10,"unpackedSize":48003,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQC8VJQabYZ706t6okCtH5WosBKpw97cL4SDdLgovbHZqgIhAO+bipQAmEYRqmv6A+NCSqw2kgLRhQi55+A5D2cZE7tm"}]},"_npmUser":{"name":"luqi_tan","email":"295099422@qq.com"},"directories":{},"maintainers":[{"name":"luqi_tan","email":"295099422@qq.com"},{"name":"wanpengsz","email":"wanpengsz@163.com"},{"name":"xkh111","email":"xukaihui11@163.com"},{"name":"hcordova","email":"chenlihuiabc@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/cordova-plugin-huawei-push_1.0.3_1785159546736_0.09247647907140033"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-20T08:19:08.326Z","modified":"2026-07-27T13:39:07.315Z","1.0.2":"2026-03-20T08:19:08.585Z","1.0.3":"2026-07-27T13:39:07.097Z"},"bugs":{"url":"https://gitcode.com/CPF-Cordova/cordova-plugin-huawei-push/issues"},"author":{"name":"Huawei Device, Inc. Ltd. and","email":"马弓手"},"license":"Apache-2.0","keywords":["cordova","huawei-push","ecosystem:cordova","cordova-openharmony"],"repository":{"type":"git","url":"gitcode:CPF-Cordova/cordova-plugin-huawei-push"},"description":"Cordova Huawei Push Plugin","maintainers":[{"name":"luqi_tan","email":"295099422@qq.com"},{"name":"wanpengsz","email":"wanpengsz@163.com"},{"name":"xkh111","email":"xukaihui11@163.com"},{"name":"hcordova","email":"chenlihuiabc@163.com"}],"readme":"# <center>cordova-plugin-huawei-push</center>\r\n\r\n[![zh-CN](https://img.shields.io/badge/lang-中文-blue.svg)](README.md)\r\n[![en](https://img.shields.io/badge/lang-English-blue.svg)](README.en.md)\r\n\r\n本项目基于 [cordova-plugin-huawei-push@1.0.2](https://www.npmjs.com/package/cordova-plugin-huawei-push/v/1.0.2) 开发，本文档重点阐述其在 OpenHarmony（OHOS）系统中的具体应用。\r\n\r\n- [cordova-plugin-huawei-push](#cordova-plugin-huawei-push)\r\n  - [简介](#简介)\r\n  - [支持平台](#支持平台)\r\n  - [下载安装](#下载安装)\r\n    - [从 npm 安装（推荐）](#从-npm-安装推荐)\r\n    - [指定平台安装 ohos](#指定平台安装-ohos)\r\n    - [从 GitCode 仓库安装](#从-gitcode-仓库安装)\r\n    - [离线安装（本地包）](#离线安装本地包)\r\n    - [安装后验证](#安装后验证)\r\n    - [卸载](#卸载)\r\n  - [约束与限制](#约束与限制)\r\n    - [兼容性](#兼容性)\r\n  - [使用示例](#使用示例)\r\n    - [OpenHarmony 配置](#openharmony-配置)\r\n    - [注册 OpenHarmony 推送服务](#注册-openharmony-推送服务)\r\n    - [监听收到推送通知](#监听收到推送通知)\r\n  - [使用说明](#使用说明)\r\n    - [前置条件](#前置条件)\r\n    - [配置参数](#配置参数)\r\n  - [新增特性](#新增特性)\r\n  - [目录结构](#目录结构)\r\n  - [贡献代码](#贡献代码)\r\n  - [许可证](#许可证)\r\n  - [官方资源](#官方资源)\r\n\r\n\r\n## 简介\r\n\r\n`cordova-plugin-huawei-push` 是 Harmony Cordova 生态系统中一款核心插件，用于在 Cordova/Ionic 混合移动应用中集成 Huawei Push Kit（华为推送服务）的官方插件。它允许应用接收来自华为服务器的通知消息，从而在华为设备上实现推送功能，此插件的使用需要后台服务端的配合。\r\n\r\n## 支持平台\r\n\r\n- **Android**：API 19 及以上（Android 4.4+）\r\n\r\n- **iOS**：10.0 及以上\r\n\r\n- **OHOS**：5.0+\r\n\r\n## 下载安装\r\n\r\n通过 hcordova CLI 即可快速安装插件，支持从 npm 仓库或 GitCode 仓库获取。\r\n\r\n### 从 npm 安装（推荐）\r\n\r\n```bash\r\n# 使用 hcordova CLI 安装\r\n# 安装 hcordova 命令化工具\r\nnpm install -g hcordova\r\n# 全平台安装插件\r\nhcordova plugin add cordova-plugin-huawei-push\r\n# 安装指定版本\r\nhcordova plugin add cordova-plugin-huawei-push@1.0.0\r\n```\r\n\r\n### 指定平台安装 ohos\r\n\r\n仅为 OHOS 平台安装插件：\r\n\r\n```bash\r\n# 仅安装到 OHOS 平台\r\nhcordova plugin add cordova-plugin-huawei-push --platform ohos\r\n# 安装指定版本并指定 OHOS 平台\r\nhcordova plugin add cordova-plugin-huawei-push@1.0.0 --platform ohos\r\n```\r\n\r\n### 从 GitCode 仓库安装\r\n\r\n仅为 OHOS 平台安装插件：\r\n\r\n```bash\r\n# 仅安装到 OHOS 平台\r\n# 默认分支安装\r\nhcordova plugin add https://gitcode.com/CPF-Cordova/cordova-plugin-huawei-push.git --platform ohos\r\n\r\n# 指定标签/分支安装\r\nhcordova plugin add https://gitcode.com/CPF-Cordova/cordova-plugin-huawei-push.git@develop --platform ohos\r\n```\r\n\r\n### 离线安装（本地包）\r\n\r\n适用于无网络环境，先下载插件包到本地，再执行离线安装：\r\n\r\n```bash\r\n# 下载插件包到本地（示例路径：~/Downloads/cordova-plugin-huawei-push）\r\n# 执行离线安装\r\nhcordova plugin add ~/Downloads/cordova-plugin-huawei-push --platform ohos\r\n```\r\n\r\n### 安装后验证\r\n\r\n安装完成后，可通过以下命令验证插件是否成功添加到项目中：\r\n\r\n```bash\r\n# 查看已安装的插件列表，若包含本插件 ID 则表示插件已成功安装\r\nhcordova plugin list\r\n```\r\n\r\n\r\n### 卸载\r\n\r\n```bash\r\n# Cordova CLI 全平台卸载\r\nhcordova plugin remove cordova-plugin-huawei-push \r\n# 指定平台卸载\r\nhcordova plugin remove cordova-plugin-huawei-push --platform ohos\r\n```\r\n\r\n## 约束与限制\r\n\r\n1. 依赖后台服务端配合，插件仅负责客户端接收推送消息，需服务端配合调用华为推送接口发送消息；\r\n2. 使用前需在华为开发者联盟创建应用并启用 Push Kit 服务，完成相关配置；\r\n3. 主要适配华为设备，非华为设备可能无法正常使用推送功能。\r\n\r\n### 兼容性\r\n\r\n支持：\r\n\r\n| 项目 | 版本/信息 |\r\n|-----|--------|\r\n| SDK | API12+ |\r\n| IDE | DevEco Studio: 5.0+ |\r\n| ROM | 5.1+ |\r\n| Emulator | OpenHarmony 6.0+ |\r\n\r\n在以下版本中已测试通过：\r\n\r\n| 项目 | 版本/信息 |\r\n|-----|--------|\r\n| @cordova-ohos/ohos | 14.0.1-ohos-14.0.1 |\r\n| SDK | 5.0.0(12) |\r\n| IDE | DevEco Studio: 6.0.13.200 |\r\n| ROM | 5.1.0.120 SP3 |\r\n| Emulator | OpenHarmony 6.0.1(21) |\r\n\r\n## 使用示例\r\n\r\n### OpenHarmony 配置\r\n\r\n修改项目中的 EntryAbility 的代码，添加推送插件在 ArkTS 侧监听和初始化：\r\n\r\n```js\r\nexport default class EntryAbility extends UIAbility {\r\n   onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void {\r\n      pagePushNotify(want.parameters); // 点击通知消息传送数据给 cordova\r\n   }\r\n\r\n   onNewWant(want: Want): void {\r\n      pagePushNotify(want.parameters); // 点击通知消息传送数据给 cordova\r\n   }\r\n}\r\n```\r\n\r\n### 注册 OpenHarmony 推送服务\r\n\r\n注册成功后，返回 token，将 token 发送到服务器后端，发送推送消息时需要。\r\n\r\n```javascript\r\nhuaweiPush.register(function(token) {\r\n    console.log(\"huaweitoken:\" + token);\r\n}, function(err) {\r\n    console.log(err);\r\n}, []);\r\n```\r\n\r\n### 监听收到推送通知\r\n\r\n应用在前台时，收到通知通知到 JS 侧，如果应用不在活跃状态，应用激活后，会收到通知\r\n\r\n```javascript\r\ndocument.addEventListener(\"huaweiMessageReceived\", function(content){\r\n    console.log(content);\r\n}, false);\r\n```\r\n\r\n返回 content 的，不同的通知，内容不同 [点击查看华为推送说明](https://developer.huawei.com/consumer/cn/doc/OpenHarmony-guides/push-send-alert)\r\n\r\n## 使用说明\r\n\r\n### 前置条件\r\n\r\n1. 访问 华为开发者联盟\r\n\r\n2. 创建新应用或选择现有应用\r\n\r\n3. 启用 Push Kit 服务\r\n\r\n4. 根据华为的文档配置开通 push 服务\r\n\r\n### 配置参数\r\n\r\n无额外配置参数，需提前在华为开发者联盟完成应用及 Push Kit 服务配置，确保插件正常调用华为推送接口。\r\n\r\n## 新增特性\r\n\r\n1. 适配 OHOS 5.0+ 系统，严格遵循 OpenHarmony 开发规范及华为 Push Kit 服务要求；\r\n   \r\n2. 完善 ArkTS 侧初始化配置，支持通知消息点击数据传递；\r\n   \r\n3. 提供简洁的 API 接口，支持推送服务注册及消息监听，适配 Cordova 应用开发场景；\r\n   \r\n4. 兼容华为设备特性，解决无 Google Mobile Services 设备的推送需求。\r\n\r\n## 目录结构\r\n\r\n```\r\ncordova-plugin-huawei-push/\r\n├── src/                          # 源代码目录\r\n│   └── main/                     # 主要源代码\r\n│       ├── cpp/                  # C++ 原生代码\r\n│       │   └── HuaweiPush/       # 华为推送模块\r\n│       │       ├── HuaweiPush.cpp  # 华为推送功能的 C++ 实现\r\n│       │       └── HuaweiPush.h    # 华为推送功能的头文件\r\n│       └── ets/                  # ArkTS 代码（OpenHarmony API）\r\n│           └── components/       # 组件目录\r\n│               └── PluginAction/ # 插件动作组件\r\n│                   └── getPushToken.ets  # 获取推送令牌的 ArkTS 实现\r\n├── www/                          # Web 资源目录\r\n│   └── huawei-push.js            # JavaScript 华为推送接口（Cordova 桥接层）\r\n├── d.sh                          # 构建脚本\r\n├── .gitignore                    # Git 忽略文件配置\r\n├── LICENSE                       # 项目开源许可证\r\n├── OAT.xml                       # OpenHarmony 审核配置文件\r\n├── package.json                  # Node.js 包配置\r\n├── plugin.xml                    # Cordova 插件描述文件（核心配置）\r\n└── README.md                     # 项目说明文档\r\n```\r\n\r\n## 贡献代码\r\n\r\n使用过程中发现任何问题都可以提 [Issue](https://gitcode.com/CPF-Cordova/cordova-plugin-huawei-push/issues) ，当然也非常欢迎发 [PR](https://gitcode.com/CPF-Cordova/cordova-plugin-huawei-push/pulls) 共建。\r\n\r\n## 许可证\r\n\r\n本插件基于 **Apache License 2.0** 开源，详见 [LICENSE](LICENSE) 文件。\r\n\r\n## 官方资源\r\n\r\nOHOS Cordova：[https://gitcode.com/CPF-Cordova/cordova-plugin-huawei-push](https://gitcode.com/CPF-Cordova/cordova-plugin-huawei-push)\r\n\r\nAndroid/iOS：[https://npmjs.com/cordova-plugin-huawei-push](https://npmjs.com/cordova-plugin-huawei-push)\r\n","readmeFilename":"README.md"}