本文旨在通过极光官方文档进行uniapp安卓移动应用的信息推广:

uniapp 集成androidSdk uniapp 集成厂商推送_大数据

主要流程: 

1、极光推送官方账号的注册和登录,创建应用,获取到appid

2、进行Android集成,配置应用包名和厂商通道参数(厂商通道的参数可以使用极光官方的,看需求是否进行配置)

3、尝试消息推送

4、uniapp极光推送的集成

5、自定义基座制作,真机调试

步骤:

1. 进行极光业务,需要注册极光账号,创建应用。

uniapp 集成androidSdk uniapp 集成厂商推送_大数据_02

查看应用信息,获取到应用的AppKey和Master Seret。

uniapp 集成androidSdk uniapp 集成厂商推送_极光推送_03

点击消息推送,集成Android推送 ,点击下一步

uniapp 集成androidSdk uniapp 集成厂商推送_uniapp 集成androidSdk_04

需要注意的是,应用包名只能配置一次,不可更改。(不配置厂商通道的直接点击右下角的下一步,完成集成,可以直接跳转到 3尝试消息推送)

uniapp 集成androidSdk uniapp 集成厂商推送_大数据_05

需要进行厂商通道参数配置的)

uniapp 集成androidSdk uniapp 集成厂商推送_消息推送_06

厂商通道参数看个人需求配置那个厂商的,跟着官方文档走即可。在官方文档结束的时候,需要进行SHA256证书指纹的申请:

uniapp 集成androidSdk uniapp 集成厂商推送_包名_07

 这里需要下载jdk-17,并进行安装和环境变量的配置,这里引入

jdk下载配置完成之后,在jdk的bin目录下cmd命令窗口中输入

keytool -genkey -alias android.keystore -keyalg RSA -validity 36500 -keystore android.keystore

uniapp 集成androidSdk uniapp 集成厂商推送_极光推送_08

之后再输入命令查看生成的证书信息

keytool -list -v -keystore android.keystore

 此处就是生成的证书指纹,将其填写在通道参数申请的证书指纹一栏就ok了。

uniapp 集成androidSdk uniapp 集成厂商推送_消息推送_09

将这里生成的SHA256密钥配置到申请厂商通道参数的配置中保存即可。

uniapp 集成androidSdk uniapp 集成厂商推送_包名_07

厂商参数申请完毕之后,进入极光,设置-应用设置-集成设置将上述参数添加至厂商数据,保存,最后进行开启即可。

uniapp 集成androidSdk uniapp 集成厂商推送_包名_11

 3. 然后尝试能否进行消息推送:(未申请厂商通道参数可以直接来这一步)

uniapp 集成androidSdk uniapp 集成厂商推送_大数据_12

能到这一步说明可以进行消息推送了,但是现在推送是没有用户的,因为还没有app集成该应用的极光推送,可以看到广播所有人,点击发送预览,可以看到人数为0。

4. 接下来就是进行uniapp 极光推送的集成了

进行uniapp集成需要极光JPush官方SDK和极光JCore官方SDK

JPush:极光JPush官方SDK - DCloud 插件市场

JCore:极光JCore官方SDK - DCloud 插件市场

在插件市场进行云打包到uniapp项目中

uniapp 集成androidSdk uniapp 集成厂商推送_包名_13

需要注意的是这里填写的包名必须跟极光推送集成Android时的包名一致

然后打开你的uniapp项目,在manifest

uniapp 集成androidSdk uniapp 集成厂商推送_大数据_14

随后在manifest最下面点击源码视图,进行一下配置: 

uniapp 集成androidSdk uniapp 集成厂商推送_极光推送_15

 

uniapp 集成androidSdk uniapp 集成厂商推送_极光推送_16

 随后进行app模块配置

uniapp 集成androidSdk uniapp 集成厂商推送_极光推送_17

 各个数据配置完成之后,就是对极光推送的数据进行推送监听,在app.vue的根文件填充以下代码:

var jpushModule = uni.requireNativePlugin('JG-JPush');

onLaunch: function() {
		console.log('App Launch');
		//#ifdef APP-PLUS
		jpushModule.setLoggerEnable(true);
		jpushModule.initJPushService();
		jpushModule.addConnectEventListener(result => {
			let connectEnable = result.connectEnable;
			console.log('jpush连接', connectEnable);
		});
//消息事件监听
		jpushModule.addNotificationListener(result => {
			let notificationEventType = result.notificationEventType;
			let messageID = result.messageID;
			let title = result.title;
			let content = result.content;
			let extras = result.extras;
			console.log('通知', result);
			console.log('type', notificationEventType);
		});
//获取注册id
		jpushModule.getRegistrationID(result => {
			console.log('注册ID', result.registerID);
			if (result.registerID) {
				uni.setStorageSync('register_id', result.registerID);
			}
		}); 
		jpushModule.addCustomMessageListener(result => {
			let messageID = result.messageID;
			let content = result.content;
			let extras = result.extras;
			console.log('自定义消息', result);
		});
		// 标签别名事件回调   
		jpushModule.addTagAliasListener(result => {
			let code = result.code;
			let sequence = result.sequence;
			let tags = result.tags;
			let tag = result.tag;
			let tagEnable = result.tagEnable;
			let alias = result.alias;
			console.log('code:   ', code, '   sequence:   ', sequence, '   tags:   ', tags, '   tag:   ', tag, '   alias:   ', alias);
		});
	
		jpushModule.addTags({
			tags: ['man', 'rich'],
			sequence: 1
		});
		// 设置别名

		//#endif
	},

到此极光推送的uniapp集成就算是完成了,接下来是进行真机调试,首先要进行自定义基座的打包

uniapp 集成androidSdk uniapp 集成厂商推送_大数据_18

 

uniapp 集成androidSdk uniapp 集成厂商推送_包名_19

 自定义基座打包完成之后,选择运行基座类型

uniapp 集成androidSdk uniapp 集成厂商推送_极光推送_20

 最后运行在真机调试即可:

uniapp 集成androidSdk uniapp 集成厂商推送_uniapp 集成androidSdk_21

 终端显示这样就说明集成ok了,

uniapp 集成androidSdk uniapp 集成厂商推送_包名_22

重复步骤3 ,再次进行极光消息推送,

uniapp 集成androidSdk uniapp 集成厂商推送_uniapp 集成androidSdk_23

 可以看到现在这里显示的人数就为1啦。

至此uniapp极光推送的uniapp集成就完成了,如果还需要进行标签,别名的设置,可以参考以下jpushModule的极光官方文档,非常详细。

极光推送方法文档参见:jpush-hbuilder-plugin/API.md at master · jpush/jpush-hbuilder-plugin · GitHub

github文档,加载可能会很慢

这个是不吃魔芋的个人空间进行的uniapp极光推送文档汇总:uniapp 极光推送 文档汇总 - 不吃魔芋的个人空间 - OSCHINA - 中文开源技术交流社区