uni-app中消息推送uniPush2.0华为离线推送的具体使用方法

官方文档地址:uni-push 2.0 快速接入指南:https://ask.dcloud.net.cn/article/40283

官方解释,可以查看官方文档,以下是基于官方文档做的具体细节补充

1.注册成为开发者

在开发应用前需要在华为开发者联盟网站上注册成为开发者并完成实名认证,具体方法请参见帐号注册认证

2.创建项目

2.1前提条件

您已注册华为开发者帐号

2.2操作步骤
  1. 登录AppGallery Connect,点击“我的项目”。
  2. 在项目页面中点击“添加项目”。

  3. 在“创建项目”页面中输入项目名称后 ,点击“创建并继续”。

    说明:点击“创建并继续”后,如果系统提示“您所在团队创建的项目数已经达到上限,请清理不需要的项目”,请进入“我的项目”,点击需要删除的项目卡片,点击“项目设置”页面下方的“删除项目”清理多余的项目。

  4. 项目创建后会进入“开通分析服务”页面,“为此项目启动分析服务”开关默认为开启状态。
    • 如果您创建的项目需要使用华为分析服务,点击“继续”进入“开通分析”页面。

    • 如果您创建的项目不需要使用华为分析服务,关闭“为此项目启动分析服务”并点击“完成”即可完成项目的创建。

  5. 在“开通分析”页面设置数据处理位置、完善更多设置的信息。
    • 点击“更多设置”完善信息,具体设置可参考开通服务。勾选同意协议的选项框后点击“开通”完成项目创建。

      说明

      必须勾选“同意华为分析服务协议”才可以开通华为分析服务。如果您在AppGallery Connect协议包中已经签署过分析服务相关协议,此处不再展示协议。

    此时该项目中还没有应用,您可以在项目下添加应用

3.创建应用 

3.1前提条件

您已注册华为开发者账号实名认证

3.2直接创建应用
  1. 登录AppGallery Connect, 点击“我的应用”。
  2. 选择“Android”页签,点击应用列表右侧的“新建发布”。

  3. 填写应用信息,完成后点击“确认”。

    说明

    点击“确认”后,如果系统提示“您所在团队创建的应用数已经达到上限,请清理不需要的应用”,请参见删除应用,删除不需要的应用。如果您对应用数上限有疑问,请联系客服(agconnect@huawei.com)。

  4. 返回应用列表,在“Android”页签查看已创建应用。点击应用名称,可进入应用详情页面。如果有多款同名应用,可通过设备类型筛选查找。

     5.这个时候你还没有应用的信息,你需要点击编辑添加应用信息,由于华为离线推送不要求上架,其他信息正常填写, 主要是你的app安装包一定要上传,点击“软件包管理”,上传uni-app云打包的文件,否则你的应用没有包名信息

4.在项目下添加应用

  1. 登录AppGallery Connect,点击“我的项目”。
  2. 在项目列表中点击您的项目。

  3. 若项目中没有应用,在“项目设置”页面中点击“添加应用”。

    若项目中已有应用,展开顶部应用列表框,点击“添加应用”。

  4. 在“添加应用”页面中设置参数后,点击“确认”。

    说明:如果提示“包名已存在,请更换包名”,您需要检查下您是否已经创建相同包名的应用,如果有,请勿重复创建。如果您未创建,请联系华为技术支持人员进行处理。

在你的项目中就可以看到相关的应用信息了 

 

 

5.配置签名证书指纹

  1. 在你的HbuilderX开发者后台管理中心开发者中心,点击应用详情,进入Android云端证书,查看证书详情中的“SHA256”证书指纹。
  2. 登录AppGallery Connect网站,点击“我的项目”。
  3. 在项目列表中找到您的项目,在项目中点击需要配置签名证书指纹的应用。
  4. 在“项目设置 > 常规”页面的“应用”区域,点击“SHA256证书指纹”后的“添加证书指纹”,输入刚刚获取的SHA256指纹。

  5. 配置完成后,点击“保存”。

 

6.设置数据处理位置

根据需要设置即可

7.开通推送服务

  1. 登录AppGallery Connect网站,选择“我的项目”。

  2. 在项目列表中找到您的项目,在项目下的应用列表中选择需要配置推送服务参数的应用。

  3. 在左侧导航栏选择“增长 > 推送服务”,点击“立即开通”,在弹出的提示框中点击“确定”。

  4. 确认开通后,您还需要在“配置”页签开通精准推送服务。至此,您已可以向应用推送消息。

    说明

    精准推送功能指订阅用户、受众群组、AB实验等功能。精准推送需要您指定数据存储位置,以便这些服务能够在您期望的位置上处理您应用及用户的数据。您的应用在AGC分发时将限制在您选择的数据存储地服务的国家和地区范围,以符合您及您的用户所在地区的相关法律法规。

  5. (可选)您还可以在“配置”页签开通或关闭您的项目级和应用级的消息回执消息自分类等权益。

    说明

    • 若项目级的推送服务权益开通,应用级的推送服务权益未开通,则该项目推送服务权益取项目级的。
    • 若项目级的推送服务权益开通,应用级的推送服务权益开通,则该项目推送服务权益取应用级的。

8.查看应用基本信息

  1. 登录AppGallery Connect网站,点击“我的项目”,在项目列表中找到您的项目,上方导航栏选择需要查看信息的应用。

  2. 下拉页面,获取包名APP IDSHA256证书指纹Client IDClient Secret等应用信息。

 

 9.将获取到的信息配置到HbuilderX后台

agconnect-services.json文件内容复制到下方输入框即可

至此厂商推送配置完成。

9.离线打包

在你的应用后台勾选上华为推送,进行云打包,注意一定要进行云打包安装到你的设备上才会生效。

 10.验证

安装到你的华为设备之后,根据cid,在消息推送--故障排查,进行检测,获取到DeviceToken,即表示成功

  • 8
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是华为离线推送参数配置示例: ```java String appId = "yourAppId"; // 应用ID String appSecret = "yourAppSecret"; // 应用秘钥 String tokenUrl = "https://login.cloud.huawei.com/oauth2/v2/token"; // 获取认证Token的URL String apiUrl = "https://api.push.hicloud.com/pushsend.do"; // Push消息下发API String accessToken = null; // 认证Token // 获取认证Token try { HttpClient client = HttpClientBuilder.create().build(); HttpPost post = new HttpPost(tokenUrl); post.setHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8"); List<NameValuePair> params = new ArrayList<>(); params.add(new BasicNameValuePair("grant_type", "client_credentials")); params.add(new BasicNameValuePair("client_id", appId)); params.add(new BasicNameValuePair("client_secret", appSecret)); post.setEntity(new UrlEncodedFormEntity(params)); HttpResponse response = client.execute(post); String result = EntityUtils.toString(response.getEntity(), "utf-8"); JSONObject jsonObject = new JSONObject(result); accessToken = jsonObject.getString("access_token"); } catch (Exception e) { e.printStackTrace(); } // 发送Push消息 try { HttpClient client = HttpClientBuilder.create().build(); HttpPost post = new HttpPost(apiUrl); post.setHeader("Content-Type", "application/json;charset=utf-8"); post.setHeader("Authorization", "Bearer " + accessToken); JSONObject json = new JSONObject(); json.put("validate_only", false); // 是否只验证消息 json.put("message_type", "notify"); // 消息类型:notify-通知,message-透传消息 json.put("android", new JSONObject().put("hps", new JSONObject().put("msg", new JSONObject() .put("type", 3) // 消息类型:1-透传异步消息,3-通知栏消息 .put("body", new JSONObject() .put("title", "Push Title") // 通知栏消息标题 .put("content", "Push Content") // 通知栏消息正文 .put("badge", 1) // 角标 .put("sound", "default") // 声音 .put("click_action", new JSONObject().put("type", 1) // 点击通知后的行为:1-打开APP首页,2-打开自定义页面,3-打开URL .put("intent", "#Intent;compo=com.rvr/.Activity;S.W=U;end")) .put("extras", new JSONObject() .put("key1", "value1") // 自定义参数 .put("key2", "value2") .put("key3", "value3"))))))); json.put("token_list", new JSONArray().put("yourDeviceToken")); post.setEntity(new StringEntity(json.toString(), "utf-8")); HttpResponse response = client.execute(post); String result = EntityUtils.toString(response.getEntity(), "utf-8"); System.out.println(result); } catch (Exception e) { e.printStackTrace(); } ``` 其,需要替换的参数有: - `yourAppId`:应用ID - `yourAppSecret`:应用秘钥 - `yourDeviceToken`:设备Token,可通过华为推送服务的SDK获取 另外,需要注意的是,华为推送服务的API与参数可能会有变更,以上代码仅供参考。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值