English | 中文
Golang示例代码对华为推送服务(HUAWEI Push Kit)服务端接口进行封装,供您参考使用。
示例代码目录结构如下:
包名 | 说明 |
---|---|
examples | 示例代码包 |
httpclient | 发送网络请求包 |
push | 服务端接口封装包 |
使用Golang示例代码前,请确认您已安装Golang开发环境(推荐使用Golang 1.11或以上版本),并解压Golang示例代码包。
将解压包中的org.huawei.com包复制到GOPATH指定的工程vendor目录下。刷新该工程,确保文件出现在对应的目录下。
Golang示例代码以push包中的Client结构体为入口。Client结构体中的每个方法都可以调用推送服务服务端的一个接口。 Client结构体包含以下方法:
方法 | 说明 |
---|---|
SendMessage | 向设备发送消息 |
如需使用examples中的功能,请在公共包中的pushcommon.go中设置相关参数。
pushcommon.go中参数说明:
参数 | 说明 |
---|---|
appId | 应用ID,从应用信息中获取 |
appSecret | 应用访问密钥,从应用信息中获取 |
authUrl | 华为OAuth 2.0获取token的地址。详情请参见基于OAuth 2.0开放鉴权-客户端模式。 |
pushUrl | 推送服务的访问地址。详情请参见推送服务-下行消息。 |
pushcommon.go中参数说明:
参数 | 说明 |
---|---|
TargetTopic | 订阅、退订或查询的主题名称 |
TargetCondition | 消息的条件表达式组合 |
TargetToken | 目标设备token,从目标设备上获取 |
TargetTokenArray | 所有目标设备tokens,从目标设备上获取 |
1). 发送Android透传消息。 通过push/model包中的NewTransparentMsgRequest方法获取初始化的透传消息的MessageRequest实例。
代码位置: send_data_message
2). 发送Android通知栏消息。 通过push/model包中的NewNotificationMsgRequest方法获取初始化的透传消息的MessageRequest实例。
代码位置: send_notify_message
3). 基于主题发送消息。基于主题发送通知栏消息或透传消息。 获取MessageRequest实例后可定制主题。
代码位置: send_topic_message
4). 基于条件发送消息。 基于条件发送通知栏消息或透传消息。获取MessageRequest实例后可定制条件。
代码位置: send_condition_message
5). 向华为快应用发送消息。 通过设置FastAppTarget属性来实现。
6). 基于APNs代理发送消息。 通过设置消息的Apns属性来实现。
代码位置: send_apns_message
7). 基于WebPush代理发送消息。 通过设置消息的WebPush属性来实现。
代码位置: send_webpush_message
8). 发送测试消息。
代码位置: send_test_message
如果您对HMS Core还处于评估阶段,可在Reddit社区获取关于HMS Core的最新讯息,并与其他开发者交流见解。
如果您对使用HMS示例代码有疑问,请尝试:
- 开发过程遇到问题上Stack Overflow,在
huawei-mobile-services
标签下提问,有华为研发专家在线一对一解决您的问题。 - 到华为开发者论坛 HMS Core板块与其他开发者进行交流。
如果您在尝试示例代码中遇到问题,请向仓库提交issue,也欢迎您提交Pull Request。
华为推送服务Golang示例代码经过Apache License, version 2.0授权许可。