当前位置: 首页 > news >正文

uni-app_消息推送_华为厂商_unipush离线消息推送

文章目录

  • 一、创建项目
  • 二、生成签名证书
  • 三、开通 unipush 推送服务
  • 四、客户端集成
  • 四、制作自定义调试基座
  • 五、开发者中心后台Web页面推送(仅支持在线推送)
  • 六、离线消息推送
    • 1、创建华为开发者账号
    • 2、开通推送服务
    • 3、创建项目
    • 4、添加应用
    • 5、添加SHA256证书指纹
    • 6、开通推送服务
    • 7、Dcloud 平台厂商推送配置
    • 8、安装 app 到真机
    • 9、华为离线消息测试
    • 10、获取 Device Token 发送消息

一、创建项目

  • 打开 Hbuilder 创建一个新项目

uni-app_消息推送_华为厂商_unipush离线消息推送

  • 登录 DCloud 开发者中心,新建一个应用(注意: 上面第一步在 Hbuilder 创建新项目时,如果已经登录了 HBuilder 账号,那么下面这一步可以省略,HBuilder 会自动帮你创建好这个应用)

uni-app_消息推送_华为厂商_unipush离线消息推送

  • 创建好应用应该之后,复制 Appid,打开 manifest.json,将 uni-app 应用标识(Appid) 替换成我们新创建应用的 Appid

uni-app_消息推送_华为厂商_unipush离线消息推送
uni-app_消息推送_华为厂商_unipush离线消息推送

二、生成签名证书

uni-app 安卓证书生成有两种方式,一种是去 DCloud 开发者中心生成证书(下面我们就采用这种方式),另一种是安装 jre 环境,生成证书(参考链接 : https://ask.dcloud.net.cn/article/35777)

  • 点击应用名称,
    uni-app_消息推送_华为厂商_unipush离线消息推送
  • 切换至【Android云端证书】,创建证书(生成证书一般需要 1-5 分钟时间)

uni-app_消息推送_华为厂商_unipush离线消息推送

  • 证书生成之后,点击证书详情,复制 MD5、SHA1、SHA256 备用

uni-app_消息推送_华为厂商_unipush离线消息推送

  • 切换至【各平台信息】,点击新增

uni-app_消息推送_华为厂商_unipush离线消息推送

  • 将之前复制 MD5、SHA1、SHA256 填写进去,包名可以自己定义(eg: com.app.uniPush)

uni-app_消息推送_华为厂商_unipush离线消息推送
uni-app_消息推送_华为厂商_unipush离线消息推送

三、开通 unipush 推送服务

  • 在【unipush】-【1.0(老版本)】-【应用信息】,选中我们上面创建的应用,我们这里只测试 Android 平台,所以勾选去掉 IOS,最后点击开通应用;
    uni-app_消息推送_华为厂商_unipush离线消息推送

四、客户端集成

  • 打开项目, 点击 manifest.json,选择【App模块配置】,否选【Push(消息推送)】,uniPush 消息推送图标,大家可自行配置;

uni-app_消息推送_华为厂商_unipush离线消息推送

  • 获取 cid(ClientId:个推业务层中的对外用户标识,用于标识客户端身份,由第三方客户端获取并保存到第三方服务端,是个推 SDK 的唯一识别号,简称 CID)

  • 在应用安装后第一次运行时应该调用 5+ API 的 plus.push.getClientInfoAsync 方法获取客户端标识。

  • 如果获取的 cid 为空,说明客户端向推送服务器注册还未完成,可以使用 setTimeout 延时重试

plus.push.getClientInfoAsync((info) => {let cid = info["clientid"];
});

四、制作自定义调试基座

  • 打开项目, 点击 manifest.json,选择【App模块配置】,否选【Push(消息推送)】,uniPush 消息推送图标,大家可自行配置;

uni-app_消息推送_华为厂商_unipush离线消息推送

  • 【运行】-【运行到手机或模拟器】-【制作自定义调试基座】

uni-app_消息推送_华为厂商_unipush离线消息推送

  • 打包需要的信息,都可通过 Dcloud 获取,可参考下的图
    uni-app_消息推送_华为厂商_unipush离线消息推送
  • 【运行】-【运行到手机或模拟器】-【运行到Android App 基座】
    uni-app_消息推送_华为厂商_unipush离线消息推送

五、开发者中心后台Web页面推送(仅支持在线推送)

  • 登录 DCloud 开发者中心,左侧选择【Uni Push】,打开消息推送页面,这里我们直接用 cid 向设备发送消息
  • 需要打开真机,获取到真机上面的 cid(clientid)
  • 当前消息推送仅支持在线推送,当 CID 在线(即 app 在前台打开运行)

uni-app_消息推送_华为厂商_unipush离线消息推送

  • 点击预览,输入cid,点击测试即可
  • 注意:如果提示 cid 不存在或应用错误,CID不存在或不属于此应用,请仔细检查一下 Appid 是否正确,是否有自定义基座,如果之前有安装过相同的应用可以先卸载之前的,重新安装;

uni-app_消息推送_华为厂商_unipush离线消息推送

六、离线消息推送

  • 若需要支持主流 android 厂商客户端接收离线推送,需要完成 :android 多厂商配置,下面以华为应用为例
  • 配置好厂商参数后请一定要提交云打包,并且使用“自有证书”打签名包;将云打包后的安装包安装到手机上,再获取cid 进行离线厂商推送测试,不可使用基座方式获取的 cid 进行离线厂商推送测试

1、创建华为开发者账号

  • 打开 开发华为开发者联盟,注册华为开发者帐号,帐号注册完后,需要完成实名认证才能享受华为开放的各类能力和服务

uni-app_消息推送_华为厂商_unipush离线消息推送

2、开通推送服务

uni-app_消息推送_华为厂商_unipush离线消息推送

  • 确认开通后,还需要在【配置】开通精准推送服务

uni-app_消息推送_华为厂商_unipush离线消息推送

3、创建项目

uni-app_消息推送_华为厂商_unipush离线消息推送uni-app_消息推送_华为厂商_unipush离线消息推送

  • 是否开开通分享服务,可根据需求自行选择uni-app_消息推送_华为厂商_unipush离线消息推送

4、添加应用

  • 在左侧导航栏选择【项目设置】,点击添加应用,将应用添加到我们新创建的项目中

uni-app_消息推送_华为厂商_unipush离线消息推送

uni-app_消息推送_华为厂商_unipush离线消息推送

5、添加SHA256证书指纹

  • 打开 Dcloud,点击证书详情,从里面找到 SHA256 复制粘贴到下图处即可

uni-app_消息推送_华为厂商_unipush离线消息推送

uni-app_消息推送_华为厂商_unipush离线消息推送

6、开通推送服务

  • 切换到【API管理】,开通推送服务

uni-app_消息推送_华为厂商_unipush离线消息推送

7、Dcloud 平台厂商推送配置

  • 下载 agconnect-services.json 文件,将该文件中 json 数据粘贴到 Dcloud 厂商配置中,见下图。

uni-app_消息推送_华为厂商_unipush离线消息推送

uni-app_消息推送_华为厂商_unipush离线消息推送

8、安装 app 到真机

  • 【发行】-【原生App-云打包】详细流程参请考上面的【制作自定义调试基座】

9、华为离线消息测试

uni-app_消息推送_华为厂商_unipush离线消息推送

uni-app_消息推送_华为厂商_unipush离线消息推送

-【 Android 配置】 - 【通知类型】 - initende 内容

intent:#Intent;action=android.intent.action.oppopush;launchFlags=0x14000000;component=安卓包名/io.dcloud.PandoraEntry;S.UP-OL-SU=true;S.title=测试标题;S.content=测试内容;S.payload=test;end

  • 华为离线时,收不到消息推送,若厂商信息确认配置无误,那么注意以下两个地方
  1. 核对 Android 应用签名SHA256 是否填写正确

  2. 华为推送信息乱写的时候,是可能不被推送的,可以按照以下格式发送排查下:

    title:订单提醒
    body:您的外卖订单已接单,请耐心等候

10、获取 Device Token 发送消息

  • 华为端发送消息都是通过 token 进行推送,获取接收离线消息的设备 token
  • 打开 Dcloud,【unipush】-【消息推送】-【配置管理】-【故障排查】- 【状态查询】- 输入设备的 cid 即可查询到对应的 Device Token
    uni-app_消息推送_华为厂商_unipush离线消息推送
    uni-app_消息推送_华为厂商_unipush离线消息推送

相关文章:

uni-app_消息推送_华为厂商_unipush离线消息推送

文章目录 一、创建项目二、生成签名证书三、开通 unipush 推送服务四、客户端集成四、制作自定义调试基座五、开发者中心后台Web页面推送(仅支持在线推送)六、离线消息推送1、创建华为开发者账号2、开通推送服务3、创建项目4、添加应用5、添加SHA256证书…...

单元测试框架-Pytest(简单学习)

单元测试框架-Pytest Pytest是基于Python语言的单元测试框架,也是一个命令行的工具,比 unittest 测试框架更灵活。具有以下特点: 入门简单,易上手,官方文档丰富而且使用广泛,有大量的参数例子。 unittest…...

毛玻璃态卡片悬停效果

效果展示 页面结构组成 页面的组成部分主要是卡片。其中卡片的组成部分主要是包括了图片和详情。 卡片的动效是鼠标悬停在卡片上时,图片会移动到左侧,并且图片是毛玻璃效果。所以我们在布局的时候图片会采用绝对布局。而详情则是基础布局。 CSS3 知识…...

【面试经典150 | 数组】除自身以外数组的乘积

文章目录 写在前面Tag题目来源题目解读解题思路方法一:记录左右乘积空间优化 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法,两到三天更新一篇文章,欢迎催更…… 专栏内容以分析题目为主,并附带一些对于本题涉及到…...

uboot启动流程-涉及s_init汇编函数

一. uboot启动涉及函数 本文简单分析uboot启动流程中,涉及的汇编函数: lowlevel_init函数调用的函数:s_init 函数 save_boot_params_ret函数调用的函数: _main 函数 本文继上一篇文章的学习,地址如下:…...

单例模式详解及5种实现方式 (设计模式 一)

基本概念 在软件开发中,单例模式是一种常见的设计模式,用于确保一个类只有一个实例,并提供全局访问点。单例模式在需要确保只有一个对象实例存在的场景中非常有用,例如数据库连接、线程池、日志记录器等。 单例模式的核心思想是通…...

面试系列 - Java常见算法(一)

目录 一、排序算法 1、冒泡排序(Bubble Sort): 2、快速排序(Quick Sort): 二、查找算法 1、二分查找(Binary Search): 三、 图算法 1、深度优先搜索(De…...

Sentinel学习(1)——CAP理论,微服务中的雪崩问题,和Hystix的解决方案 Sentinel的相关概念 + 下载运行

前言 Sentinel 是面向分布式、多语言异构化服务架构的流量治理组件,主要以流量为切入点,从流量路由、流量控制、流量整形、熔断降级、系统自适应过载保护、热点流量防护等多个维度来帮助开发者保障微服务的稳定性。 本篇博客介绍CAP理论,微…...

C#学习 - 表达式、语句

表达式 定义 算法逻辑的最基本单元,表达一定的算法意图是由一个或多个操作数和零个或多个操作符组成的序列表达式功能是求值,得到的结果可能是一个值、对象、方法或名称空间因为操作符有优先级,所以表达式也有优先级 分类 一个值。表达式…...

VirtualBox 进入虚拟机后,鼠标出不来了

VirtualBox 进入虚拟机后,鼠标出不来了。 一般情况下,VirtualBox默认的鼠标切换快捷键是右边的Ctrl键。 如果按住右Ctrl键还是没有用,那应该是没有设置主机键。 设置方法: 打开VirtualBox的全局设定,找到热键&#xff…...

030-从零搭建微服务-消息队列(二)

写在最前 如果这个项目让你有所收获,记得 Star 关注哦,这对我是非常不错的鼓励与支持。 源码地址(后端):mingyue: 🎉 基于 Spring Boot、Spring Cloud & Alibaba 的分布式微服务架构基础服务中心 源…...

Docker从认识到实践再到底层原理(九)|Docker Compose 容器编排

前言 那么这里博主先安利一些干货满满的专栏了! 首先是博主的高质量博客的汇总,这个专栏里面的博客,都是博主最最用心写的一部分,干货满满,希望对大家有帮助。 高质量博客汇总 然后就是博主最近最花时间的一个专栏…...

操作EXCEL计算3万条数据的NDVI并填入

Python操作EXCEL,计算3万条数据的NDVI并填入 问题描述 现在是有构建好了的查找表,不过构建了3万条数据,在excel中手动计算每行的NDVI值太麻烦了,也不会操作。 就试试python吧,毕竟python自动处理大型EXCEL数据很方便…...

Linux服务器安装Anaconda 配置远程jupyter lab使用虚拟环境

参考的博客: Linux服务器安装Anaconda 并配置远程jupyter lab anaconda配置远程访问jupyter,并创建虚拟环境 理解和创建:Anaconda、Jupyterlab、虚拟环境、Kernel 下边是正文了。 https://www.anaconda.com/download是官网网址,可…...

R语言实现随机生存森林(3)

常见问题解答 1、计算C指数 1-Error rate&#xff0c;或者 rsf.err <- get.cindex(yvar$Survival_months,yvar$OS,predictedrf.grow$predicted) 2、模型中predicted和predicted.oob区别 predicted和predicted.oob是两个不同的属性&#xff0c;它们分别表示模型的预测结果…...

WebPack-打包工具

从图中我们可以看出&#xff0c;Webpack 可以将多种静态资源 js、css、less 转换成一个静态文件&#xff0c;减少了页面的请求. 下面举个例子 &#xff1a; main.js 我们只命名导出一个变量 export const name"老六"index.js import { name } from "./tset/…...

CISSP学习笔记:PKI和密码学应用

第七章 PKI和密码学应用 7.1 非对称密码学 对称密码系统具有共享的秘钥系统&#xff0c;从而产生了安全秘钥分发的问题非对称密码学使用公钥和私钥对&#xff0c;无需支出复杂密码分发系统 7.1.1 公钥与私钥 7.1.2 RSA&#xff08;兼具加密和数字签名&#xff09; RSA算法…...

简述Java21新特性

Java21新特性 你发任你发我用Java8 不管Java更新了多少版本&#xff0c;我还是用Java8,因为在很多框架不知道支持不支持Java21&#xff0c;而且因为很多Jar包的版本冲突问题&#xff0c;所以我还是用Java8&#xff0c;但是对于新技术的了解是非常必要的。 Java 21是新推出的长…...

Composition API(常用部分)

1. Composition API(常用部分) 文档: ​ https://composition-api.vuejs.org/zh/api.html 1) setup 新的option, 所有的组合API函数都在此使用, 只在初始化时执行一次函数如果返回对象, 对象中的属性或方法, 模板中可以直接使用2) ref 作用: 定义一个数据的响应式语法: cons…...

驱动插入中断门示例代码

驱动插入中断描述符示例代码 最近做实验&#xff0c;每次在应用层代码写测试代码的时候都要手动挂一个中断描述符&#xff0c;很不方便所以就想着写个驱动挂一个中断门比较省事 驱动测试效果如下&#xff1a; 下面的代码是个架子&#xff0c;用的时候找个驱动历程传递你要插…...

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…...

云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?

大家好&#xff0c;欢迎来到《云原生核心技术》系列的第七篇&#xff01; 在上一篇&#xff0c;我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在&#xff0c;我们就像一个拥有了一块崭新数字土地的农场主&#xff0c;是时…...

MFC内存泄露

1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...

蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练

前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1)&#xff1a;从基础到实战的深度解析-CSDN博客&#xff0c;但实际面试中&#xff0c;企业更关注候选人对复杂场景的应对能力&#xff08;如多设备并发扫描、低功耗与高发现率的平衡&#xff09;和前沿技术的…...

转转集团旗下首家二手多品类循环仓店“超级转转”开业

6月9日&#xff0c;国内领先的循环经济企业转转集团旗下首家二手多品类循环仓店“超级转转”正式开业。 转转集团创始人兼CEO黄炜、转转循环时尚发起人朱珠、转转集团COO兼红布林CEO胡伟琨、王府井集团副总裁祝捷等出席了开业剪彩仪式。 据「TMT星球」了解&#xff0c;“超级…...

鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/

使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题&#xff1a;docker pull 失败 网络不同&#xff0c;需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...

NLP学习路线图(二十三):长短期记忆网络(LSTM)

在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...

优选算法第十二讲:队列 + 宽搜 优先级队列

优选算法第十二讲&#xff1a;队列 宽搜 && 优先级队列 1.N叉树的层序遍历2.二叉树的锯齿型层序遍历3.二叉树最大宽度4.在每个树行中找最大值5.优先级队列 -- 最后一块石头的重量6.数据流中的第K大元素7.前K个高频单词8.数据流的中位数 1.N叉树的层序遍历 2.二叉树的锯…...

React---day11

14.4 react-redux第三方库 提供connect、thunk之类的函数 以获取一个banner数据为例子 store&#xff1a; 我们在使用异步的时候理应是要使用中间件的&#xff0c;但是configureStore 已经自动集成了 redux-thunk&#xff0c;注意action里面要返回函数 import { configureS…...

Java + Spring Boot + Mybatis 实现批量插入

在 Java 中使用 Spring Boot 和 MyBatis 实现批量插入可以通过以下步骤完成。这里提供两种常用方法&#xff1a;使用 MyBatis 的 <foreach> 标签和批处理模式&#xff08;ExecutorType.BATCH&#xff09;。 方法一&#xff1a;使用 XML 的 <foreach> 标签&#xff…...