一、注册手机厂商账号(我只测试了华为和小米这里就说这两种)
华为开发者平台账号注册:(建议直接使用华为账号,否则可能无法使用推送);
1.直接到https://developer.huawei.com/华为开发者联盟去注册账号,跟着提示一步步走即可
2.账号注册完后到管理中心----》我的应用 ----》新建 去新建项目。
3.新建完成后,点击开发进入如下页面
4.填写包名,这个包名很重要,需要和unipush的包名保持一致。
5.项目创建完成后需要生成指纹证书文件
(0)如果配置了java环境变量就可以直接往下走,如果没有就需要执行cd命令进入keytool.exe所在的目录(java安装目录的bin下)。
(1)在命令行输入命令 keytool -genkey -alias testalias -keyalg RSA -keysize 2048 -validity 36500 -keystore 文件位置
例如: keytool -genkey -alias testalias -keyalg RSA -keysize 2048 -validity 36500 -keystore E:\test\android.keystore 然后跟据命令行提示操作生成keystore文件
testalias是证书别名 ,还有证书文件密码和位置都需要记住打包的时候必须要。
(2)查看keystore文件
输入命令: keytool -list -v -keystore E:\test\android.keystore
注意: jks文件和keystore文件都是指纹证书文件只是生成方式不同,jks文件时android stadio生成的,kestore文件是直接在命令行窗口生成,这里就不说android如何生成了。上面重要的是证书指纹部分。
6.将生成的SHA256填入如图标记部分。
自此华为所需信息都已经获取完成。
7.项目信息完成后,开通推送服务
点击“立即开通”
web推送代理打开
小米开发者账号申请:
1.到小米开发这平台注册账号:需要小米账号,非小米账号就会没有权限
2.账号注册完成,就可去到推送运营平台。点击创建应用,创建自己的推送项目,注意报名要与unipush保持一致。
3.点击应用信息就可以拿到,推送需要的应用信息
二、unipush接入厂商:
1.在https://dev.dcloud.net.cn/app/index?type=0网址申请DCloud开发者账号
2.去开发者中心创建应用
3.应用创建完成,去到unipush页面,编辑应用信息,如果想单独打包android可以不选中ios,然后点击开通推送服务就开启了。
注意:这里的android包名要与后面的厂商应用保持一致,应用签名要与华为平台上的签名文件使用同一个(这个坑我爬了好几天)
4.配置厂商通道:点击厂商推送设置将各个厂商的应用信息填入对应项中,保存。
5.应用打包:
(1)在hbuilderx上登陆DCloud账号,创建h5或者是uniapp项目
(2)项目创建完成后,配置manifest.json文件添加推送服务,先配置基础服务,应用名称和Dcloud开发者平台上创建的名称一致,然后获取appid(如果没有appid,点击重新获取)
点击SDK配置开启推送服务
在模块权限配置中开启推送服务
3.选中该项目,点击发行,选择第一个 “原生App-云打包”
4.选择打包apk包,使用自有证书(这个证书的生成在上面华为账号申请时介绍过)填入证书别名,填入证书密码,填入证书路径,选择打正式包,然后点击打包,等待链接生成手机下载apk安装就完成了。
这里如果要多次调试可选择自定义基座打包,如何基座打包,之后的文章在进行介绍。