我是一个1年工作经验的java开发后端,菜的要死,学习过一点基础的前端vue开发,所以再看uniapp开发的时候让我觉得很有意思,也觉得自己应该也可以开发玩一玩,除了布局样式很薄弱,但是开发逻辑还是可以写一点的,今天有个需求是对接极光推送,我去官网看了看,让我大跌眼镜,根本不知道何从下手。最后在我厚着脸皮的情况下和疯狂骚扰网络大佬后,终于成功了,所以我记录一下内容,给大家借鉴一下
第一步,去极光官网,注册 https://www.jiguang.cn/ 第二步,根据控制台操作指南创建一个应用
http://docs.jiguang.cn/jsms/guideline/JSMS_consoleguide/
uniapp使用java后端框架 uniapp开发后端可以用java吗_App
创建完应用过程中会输入一个包名,比如:com.demo.xxx
记住这个包名,后面有用

第三步
去uniapp插件市场,搜索找到官方推荐的极光插件
https://ext.dcloud.net.cn/plugin?id=741uniapp使用java后端框架 uniapp开发后端可以用java吗_App_02
点击试用插件,选择绑定的项目

第四步

用uniapp项目编辑器打开项目,进行配置

uniapp使用java后端框架 uniapp开发后端可以用java吗_包名_03


在图片中的文件打开,选择云插件,选择刚才点击试用的插件,然后再andirxxx_appkey哪里输入在极光生成的appkey

第五步
在项目的App.vue编辑

<script>
	export default {
		onLaunch: function() {
			console.log('App Launch');
			// // #ifdef APP-PLUS
			// // 检测升级
			
			this.addJYJPushReceiveNotificationListener();
			this.addJYJPushReceiveOpenNotificationListener();
			// this.addJYJPushReceiveBackgroudNotificationListener();
			this.addJYJPushCustomReceiveNotificationListener();
			const jyJPush = uni.requireNativePlugin('JY-JPush');
			jyJPush.setJYJPushAlias({
				userAlias: 'testAlias'
			}, result => {
				//  设置成功或者失败,都会通过这个result回调返回数据;数据格式保持极光返回的安卓/iOS数据一致
				//  注:若没有返回任何数据,考虑是否初始化完成
				// uni.showToast({
				// 	icon: 'none',
				// 	title: JSON.stringify(result)
				// })
				console.log(JSON.stringify(result))
			});
		},
		onShow: function() {
			console.log('App Show')
		},
		onHide: function() {
			console.log('App Hide')
		},
		globalData: {
			test: ''
		},
		methods: {
			addJYJPushReceiveOpenNotificationListener() {
				const jyJPush = uni.requireNativePlugin('JY-JPush');
				jyJPush.addJYJPushReceiveOpenNotificationListener(result => {
					uni.showToast({
						icon: 'none',
						title: 'open' + JSON.stringify(result)
					})
					console.log("addJYJPushReceiveOpenNotificationListener___"+JSON.stringify(result));
					console.log('打开了' + JSON.stringify(result));
				});
			},
			addJYJPushReceiveNotificationListener() {
				const jyJPush = uni.requireNativePlugin('JY-JPush');
				jyJPush.addJYJPushReceiveNotificationListener(result => {
					uni.showToast({
						icon: 'none',
						title: 'rec' + JSON.stringify(result)
					})
					console.log("addJYJPushReceiveNotificationListener___"+JSON.stringify(result));
					console.log('收到了' + JSON.stringify(result));
				});
			},
			addJYJPushReceiveBackgroudNotificationListener(){
				const jyJPush = uni.requireNativePlugin('JY-JPush');
				jyJPush.addJYJPushReceiveBackgroudNotificationListener(result => {
					uni.showToast({
						icon: 'none',
						title: 'recback' + JSON.stringify(result)
					})
					console.log("addJYJPushReceiveBackgroudNotificationListener___"+JSON.stringify(result));
					console.log('后台收到了' + JSON.stringify(result));
				});
				
			},
			addJYJPushCustomReceiveNotificationListener() {
				const jyJPush = uni.requireNativePlugin('JY-JPush');
				jyJPush.addJYJPushCustomReceiveNotificationListener(result => {
					uni.showToast({
						icon: 'none',
						title: 'ReceiveCustomNotificationListener' + JSON.stringify(result),
					})
					console.log("addJYJPushCustomReceiveNotificationListener___"+JSON.stringify(result));
				});
			}
		}
	}
</script>

uniapp使用java后端框架 uniapp开发后端可以用java吗_包名_04


最后一步要测试了,但是,最重要的一步,就是模拟测试的时候,要创建一个基座

在编辑器的

运行——》运行到手机或模拟器——》制作自定义调试基座

在包名里面,输入极光哪里设置的包名,用在这里

uniapp使用java后端框架 uniapp开发后端可以用java吗_uniapp使用java后端框架_05


点击打包后,即可

等待打包完成后


运行——》运行到手机或模拟器——》运行基座选择

选择自定义的基座

然后直接运行到手机,就可以调试了在极光测试发送信息

uniapp使用java后端框架 uniapp开发后端可以用java吗_uniapp使用java后端框架_06


最后,成功了

uniapp使用java后端框架 uniapp开发后端可以用java吗_App_07