HarmonyOS应用/服务通过数字证书(.cer文件)和Profile文件(.p7b文件)来保证应用/服务的完整性。在申请数字证书和Profile文件前,首先需要通过DevEco Studio来生成密钥(存储在格式为.p12的密钥库文件中)和证书请求文件(.csr文件)。然后,申请调试数字证书和调试Profile文件。最后,将密钥(.p12)文件、数字证书(.cer)文件和Profile(.p7b)文件配置到工程中。
配置完成后,进入工程级build-profile.json5文件,在“signingConfigs”下可查看到配置成功的签名信息。
参见华为官方文档 配置AppGallery Connect ,完成文档中的内容配置。
登录 AppGallery Connect 网站,选择我的项目
。打开刚才创建的项目,点击创建应用,如下图:
点击左侧 “推送服务”选择相应的项目和应用,点击开通推送服务 开通推送服务 。
选择我的项目
打开您刚才创建的项目,然后选择您刚创建的鸿蒙应用,点击选择添加公钥指纹 (HarmonyOS API 9及以上)
。
选择您刚才在1. 生成手动签名文件并在工程中配置
步骤中创建的调试证书
在这里可以看到您刚才选择的证书文件的指纹信息
在 “项目设置 > 推送服务> 配置 > 选择应用” 中开通 “应用回执状态”,配置个推侧的回调地址。如下
回执名称可自定义
回调地址(杭州机房,若应用非杭州机房或不清楚应用对应机房请及时与个推技术支持联系。)
https://thirdrcp-hz.getui.com/harmony/hw
点击“提交”,提示“成功”则表示配置成功
在 “项目设置 > 推送服务> 配置 > 选择应用” 中申请开通 “自分类权益”,并在服务端设置对应的消息分类参数,消息分类标准以及申请流程,详见 鸿蒙消息分类标准。如下
创建服务帐号密钥文件 ,您在华为开发者联盟的API Console选择您需要的项目(切记需要选择您需要开通的鸿蒙应的所属项目),如下
点击创建服务帐号密钥文件
点击“生成公私钥”,公钥上传,私钥自己保存
输入名称和相关描述,点击创建并下载JSON,文件会下载到本地
下载文件如下
下载文件内容如下:(如有错误请检查生成服务账号秘钥生成流程,)
需完成上述 1. 生成手动签名文件并在工程中配置
和 2. 创建华为应用、开通推送服务、创建服务帐号密钥文件
流程:
工程中配置Client ID:
在项目模块级别下的src/main/module.json5(例如entry/src/main/module.json5)中,新增metadata并配置client_id,如下所示:
"module": {
"name": "entry",
"type": "xxx",
"description": "xxxx",
"mainElement": "xxxx",
"deviceTypes": [],
"pages": "xxxx",
"abilities": [],
// 配置如下信息
"metadata": [
{
"name": "client_id",
// 配置为步骤1中获取的Client ID
"value": "xxxxxx"
}
]
}
集成验证(获取Push Token):
import { pushService } from '@kit.PushKit';
import { hilog } from '@kit.PerformanceAnalysisKit';
import { BusinessError } from '@kit.BasicServicesKit';
import { UIAbility, AbilityConstant, Want } from '@kit.AbilityKit';
export default class EntryAbility extends UIAbility {
// 入参 want 与 launchParam 并未使用,为初始化项目时自带参数
async onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): Promise<void> {
// 获取Push Token
try {
const pushToken: string = await pushService.getToken();
hilog.info(0x0000, 'testTag', 'Get push token successfully: %{public}s', pushToken);
} catch (err) {
let e: BusinessError = err as BusinessError; hilog.error(0x0000, 'testTag', 'Get push token catch error: %{public}d %{public}s', e.code, e.message);
}
}
}
此方法是为了验证您的华为推送集成是否成功,个推SDK会获取您的PushToken并和个推推送绑定,无需您在代码中进行以上操作
在个推开发者中心--点击右上角头像--应用管理--选择对应应用点击右侧的“编辑”--然后勾选“鸿蒙”的应用平台,找客户端开发同学获取鸿蒙包名进行填写,最后点击“完成”进行保存
在个推开发者中心--应用管理页--找到对应的这个鸿蒙应用--进入“消息推送”页--配置管理--应用配置–鸿蒙:去填写鸿蒙应用的厂商信息,点击上传文件,选择您在创建服务器秘钥文件中下载的JSON文件上传: