uniapp打包app,对接华为厂商,实现unipush离线消息推送

news2024/11/15 1:39:14

今天终于可以抽出点时间,来记录一下这几天心塞的心情。上周公司派过来一个活,说是使用uniapp制作一个app,同时要实现在线消息推送和离线消息推送,啥话没说就揽了下来。不过说实在的,从来没有开发过app,好歹会点vue。可想而知,接下来的几天总是穿梭于百度搜索、vue官方、uniapp、dcloud等官网,各种资料搜索……最后功能算是做完了,但心情不是很好,踩了好多坑,今天主要记录一下离线消息推送吧,供小伙伴们参考。

项目背景

使用uniapp打包app,与华为厂商对接离线消息推送,本次打包用到的证书主要是在dcloud平台自动生成的,几分钟就可以创建好,如果想要创建自己的Android证书的小伙伴,可以参考一下uniapp官方提供的方法,或者使用Android studio也可以创建证书。

一、dcloud平台应用配置

1、添加应用

这个比较简单,直接贴个图吧。
在这里插入图片描述
2、创建证书
点击我的应用中的应用名称,进入配置应用基本信息,创建Android云端证书等,我的已经创建好。
在这里插入图片描述

二、华为开放平台配置

1、创建华为开发者账号
发布华为app必需得注册一个开发者账号,这个很简单。
2、创建项目
先创建一个项目,顺便开通一些分析之类的权限什么的。
在这里插入图片描述
开通需要的权限,默认都是勾选的。
在这里插入图片描述
在这里插入图片描述
至此,项目就创还能好了。
3、创建应用
进入项目中,点击添加应用即可进入下面的页面。应用包名需要和dcloud中配置的包名同步。
在这里插入图片描述
应用添加成功后,就是下图展示的样子。但是缺少一个sha256证书指纹。
在这里插入图片描述

4、添加SHA256证书指纹【必填】
在这里插入图片描述
我直接在dcloud云端创建的证书,点击证书详情,从里面找到sha256码复制粘贴到下图处即可。
在这里插入图片描述
5、开通推送服务
切换到api管理中开通推送服务。
在这里插入图片描述
6、增长栏目中开通推送服务
点击左侧增长栏目中的推送服务,开通推送服务。后期要创建推送通知和测试离线消息使用。
在这里插入图片描述
7、配置
下方勾选的选项都需要开通。
在这里插入图片描述

三、dcloud平台厂商推送配置

华为端添加证书指纹后需要下载agconnect-services.json文件,将该文件中json数据粘贴到dcloud厂商配置中,见下图。
在这里插入图片描述
在这里插入图片描述

四、Hbuilderx打包并运行

1、下载证书
在dcloud的应用中下载云端证书,要打包用到。
在这里插入图片描述

2、打包自定义基座
打包时必需选择使用自有证书,将上一步下载的证书放在本地指定位置,将路径填写到证书文件处,证书别名和证书私钥密码可以从证书详情中找到。
在这里插入图片描述
至此,所有的配置就完成了。
3、运行到自定义基座
需要通过usb将手机和电脑连通。
注意:
手机必需为华为真机;
pc电脑和华为手机都需要安装华为手机助手连通;
华为手机开启usb调试模式;

五、获取device token

华为端发送消息都是通过token进行推送,此刻需要获取到接收离线消息的设备token。打开dos系统输入下图命令即可捕捉到app的相关信息,其中就有token值。
在这里插入图片描述
注意:先打开dos系统输入上图命令回车运行,再启动运行到手机端的app才能跑出app信息。

六、华为端测试离线消息

1、添加推送通知并测试
拿到device token后进入推送通知中可以测试发送离线消息,如果在上述中可以正常拿到token值,那此处测试发送消息是可以正常接收到的。
在这里插入图片描述
我的测试到此是可以正常接收离线消息的。

七、申请子分类权益

本来以为到上述步骤已经调通了,但还是有个最后小坑。由于华为后台的升级,将推送的消息分为了俩类,即服务与通讯类和营销类。我们开通的账号默认发送的是营销类消息,是有频次限制的。所以我后来将推送通知提交后,后来收不到消息了。这个时候需要申请自分类权益,因为该分类是不限制推送频次的,所以没办法,只能继续搞。
申请自分类权益有条件,小伙伴们需要注意一下。俩种方法:其一、将你的华为应用发布上架才能申请;其二、如果是公司内部的app不准备上线的,可以写个申请发给官方也可以,权益开通后也可以申请。
具体的申请方法我就不写了,将官方地址放出来,大家认认真真的看看就明白了。
自分类权益申请官方地址
自分类申请下来后还需要最后适配一步。

写到最后

从开始发布到最后,历时近三天吧。整体的体验是,写代码不难,大部分时间都花在了研究官方平台上面。中间也咨询了个推官方技术和华为官方技术,感谢吧。
感谢路过的小伙伴们,能百忙中抽出时间阅读本文章,希望能帮助到大家,少踩坑。
如果有写的不正确的地方,也希望大家能积极指正。
点赞、关注加收藏,一键三连行动起来。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/729320.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【网络安全带你练爬虫-100练】第9练:post提交/提取json数据包

目录 一、目标1:post提交json数据包 二、目标2:接收json数据包 三、目标3:提取指定的键值 四、网络安全小圈子 一、目标1:post提交json数据包 (大家可以自己随便找一个,像一些登录过的网站刷新一下&am…

jenkins构建历史设置保留数量

jenkins默认保留构建历史所有,这样磁盘空间越来越小,设置保留个数。 进入job项目中-配置 勾选Discard old builds,设置保留天数和个数,可以只填保留个数。 应用保存job配置,并重新构建项目,重新构建完成后…

基于pyqt5+opencv实现16位tif影像转jpg

现在大部分图像软件都支持tiff影像的浏览,但都是仅限于8位的影像,对应CV16U类型的tiff影像并不支持(这需要专业的gis软件才可进行操作)。为了便捷操作,故此基于pyqt5opencv实现16位tif影像转jpg的软件。 本博文涉及基于…

OpenCV4通道的分离split(),通道的合并merge(),通道的混合mixChannels()

文章目录 1、通道的分离函数 split()函数原型&#xff1a;&#xff08;1&#xff09;函数原型一&#xff1a;用 Mat型数组 Mat mvbegin[3]存储分离后的图像&#xff1b;输入参数&#xff1a; &#xff08;2&#xff09;函数原型二&#xff1a;用 vector容器 vector <Mat>…

科技中心PMO的建设与实践︱德邦证券PMO专家张鉴庭

德邦证券科技中心PMO专家张鉴庭先生受邀为由PMO评论主办的2023第十二届中国PMO大会演讲嘉宾&#xff0c;演讲议题&#xff1a;科技中心PMO的建设与实践。大会将于8月12-13日在北京举办&#xff0c;敬请关注&#xff01; 议题简要&#xff1a; 在数字化转型的背景下&#xff0c…

jvm对象创建和内存分配优化

一、创建对象过程 1、类加载检测 虚拟机遇到一条new指令时&#xff0c;首先将去检查这个指令的参数是否能在常量池中定位到一个类的符号引用&#xff0c;并且检查这个符号引用代表的类是否是否已被加载、解析和初始化过。如果没有&#xff0c;那必须先执行相应的类加载过程。 …

ModaHub魔搭社区:向量数据库Milvus Lite的优势和适配场景

目录 Milvus Lite 的优势 Milvus Lite 的适配场景 如何安装、部署和使用 Milvus Lite? 总结 想要体验世界上最快的向量数据库&#xff1f;缺少专业的工程师团队作为支撑&#xff1f;Milvus 安装环境受限&#xff1f; 别担心&#xff0c;轻量版 Milvus 来啦&#xff01; …

火爆全网,python自动化测试 parametrize参数化+allure测试报告(详细)

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 pytest的参数化&a…

1763_gcc编译c语言makefile自动生成工具的Perl实现_Linux

全部学习汇总&#xff1a; GreyZhang/g_makefile: Learn makefile from all kinds of tutorials on the web. Happy hacking and lets find an common way so we may dont need to touch makefile code any more! (github.com) 其实&#xff0c;调试完这个之后觉得之前Windows上…

开源:老朋友,新棋局

在软件开发领域&#xff0c;开源已经成为一股强大的力量&#xff0c;为企业带来了巨大的好处。我深知开源的价值和影响力。其中之一就是降低开发成本。传统的软件开发往往需要庞大的开发团队和昂贵的授权费用&#xff0c;但开源软件将这一切变得通俗易懂。 避免了重复造轮子&a…

ROS-Moveit!配置

文章目录 1. SW2URDF2.Moveit下载及初始化3.自碰撞矩阵 Self-Collisions4.虚拟关节 Virtual Joints&#xff08;不配置&#xff09;5.规划组 Planning Groups添加机械臂规划组添加夹爪规划组 6.机器人姿态 Robot Pose7.末端执行器 End Effectors8.作者信息 Author Information9…

(秋招)面激光slam必备知识--scan context

scan context是一个描述场景的描述符&#xff0c;它之前不是用在slam上面的&#xff0c;但是有人将它用到激光slam上面&#xff0c;发现还可以&#xff0c;于是这个scan context就用来进行激光slam的位置识别(做闭环用的)。 ​ 编辑切换为居中 添加图片注释&#xff0c;不超过…

Python基础综合案例-数据可视化(地图)

今天给大家带来的是Python综合实战开发的数据可视化操作 通过python实现对数据的分析、可视化 数据来源:线上公布数据&#xff0c;需要可私信 前期准备工作&#xff1a;Python可视化准备工作 前期模块安装等前期基础的准备工作大家可以看我之前的文章讲解&#xff0c;有问题可…

< 每日算法 - JavaScript解析:一文解决 “ 买卖股票 ” 系列算法题 >

每日算法 - JavaScript解析&#xff1a;一文解决 “ 买卖股票 ” 系列算法题 一、基础题目> 题目> 解题思路定义操作定义状态动态规划值所需变量完整代码 二、添加条件&#xff1a;当交易次数为 ∞ 时> 题目> 解决思路 三、添加条件&#xff1a;当交易次数为 K nu…

小机器人在现实世界中学会快速驾驶

小机器人在现实世界中学会快速驾驶 —强化学习加上预训练让机器人赛车手加速前进— Without a lifetime of experience to build on like humans have (and totally take for granted), robots that want to learn a new skill often have to start from scratch. Reinforceme…

【案例教程】GIS在地质灾害危险性评估与灾后重建中的实践技术应用及python机器学习灾害易发性评价模型建立与优化

地质灾害是指全球地壳自然地质演化过程中&#xff0c;由于地球内动力、外动力或者人为地质动力作用下导致的自然地质和人类的自然灾害突发事件。由于降水、地震等自然作用下&#xff0c;地质灾害在世界范围内频繁发生。我国除滑坡灾害外&#xff0c;还包括崩塌、泥石流、地面沉…

AI对话宝-智能AI在线问答写作

AI对话宝的工作原理是基于自然语言处理技术。当用户与其进行交互时&#xff0c;AI对话宝会根据用户的输入&#xff0c;通过算法和模型来理解用户的意图&#xff0c;并给出相应的回答&#xff0c;并且系统还可以不断学习并优化其回答&#xff0c;从而提高其交互的效率和准确性。…

批量提取目录下的所有文件名称放至Excel表格中,方便快捷,快来试试吧

批量提取目录下的所有文件名称放至Excel表格中&#xff0c;方便快捷&#xff0c;快来试试吧 Sina Visitor Systemhttps://weibo.com/tv/show/1034:4920955869265935?fromold_pc_videoshow

binwalk-解包工具

一、binwalk介绍 二、安装binwalk # 1. 安装依赖和binwalk ​git clone https://github.com/ReFirmLabs/binwalk.git cd binwalk sudo python ./setup.py uninstall # 如果您有以前安装的 Binwalk 版本&#xff0c;建议您在升级之前将其卸载 sudo ./deps.sh # 安装依赖项 sud…

C语言学习(三十五)---动态内存练习题与柔性数组

经过前面的内容&#xff0c;我们已经对动态内存的知识已经有了相当多了了解&#xff0c;今天我们再做几道有关动态内存的练习题&#xff0c;然后再介绍一下柔性数组&#xff0c;好了&#xff0c;话不多说&#xff0c;开整&#xff01;&#xff01;&#xff01; 动态内存练习题…