码迷,mamicode.com
首页 > 移动开发 > 详细

PhoneGap实现信息推送-基于极光推送(Android版)

时间:2015-02-07 11:55:42      阅读:224      评论:0      收藏:0      [点我收藏+]

标签:

极光推送插件安装地址:

https://github.com/jpush/jpush-phonegap-plugin

安装插件后,需要在AndroidManifest.xml中配置极光平台申请的App Key:

<meta-data android:name="JPUSH_APPKEY" android:value="aca4b37e5c00d477b*****" />
在JPushPlugin.java文件的22行处有报错,需要把这里修改为你自己的主包名。

插件中JpushPlugin.js中setTags方法存在bug,需要在data参数加上[],如下所示:

JPushPlugin.prototype.setTags = function(data){
        
	try{
		this.call_native("setTags",[data],null);
	}
	catch(exception){
		console.log(exception);
	}
}

另外由于极光推送插件使用了PhoneGap的device插件,因此需要安装它:

cordova plugin add org.apache.cordova.device

如果需要对所有用户推送信息,只需要在App启动时初始化插件即可:

document.addEventListener("deviceready",function(){
	//插件初始化
	window.plugins.jPushPlugin.init();
	
}, false);

如果需要对某一个用户进行推送,需要在插件初始化后,获取用户的设备ID,并存储至服务端:

document.addEventListener("deviceready",function(){
	//插件初始化
	window.plugins.jPushPlugin.init();
window.plugins.jPushPlugin.getRegistrationID(function(id){
		//将获取到的id存入服务端
	}); 
}, false);

如果需要对某一类人推送信息,可以为设备设置tag,比如为同年级同专业的用户设置相同的tag:

//登录后设置tag,tag格式为‘tag_‘+年级id+‘_‘+专业id,如下所示,多个标签用逗号隔开
var tag = ‘tag_16_1‘;
//为当前设备设置tag
window.plugins.jPushPlugin.setTags(tag);


//退出登录时,清除tag,就不会再接收到推送信息了
window.plugins.jPushPlugin.setTags(‘‘);
点击通知栏的回调方法:
//点击通知栏的回调,在这里编写特定逻辑
window.plugins.jPushPlugin.openNotificationInAndroidCallback= function(data){
	console.log(data);
}

data的格式类似于下面的例子,解析JSON数据即可完成自定义逻辑:

{
    "alert": "你好 , 这是灵动工大推送的一条信息",
    "extras": {
        "cn.jpush.android.MSG_ID": "692692481",
        "app": "com.jiusem.jingle",
        "cn.jpush.android.ALERT": "详细内容",
        "cn.jpush.android.EXTRA": "{"article_id":1}", //文章id
        "cn.jpush.android.PUSH_ID": "692692481",
        "cn.jpush.android.NOTIFICATION_ID": 692692481,
        "cn.jpush.android.NOTIFICATION_TYPE": "0"
    }
}

好了,上面的配置完成后,就可以在极光后台进行通知的推送了。

当然,极光推送的内容远比上面介绍的要多,还支持自定义消息富媒体消息的推送,这里只是做一个简单的介绍和入门,具体请移步官方文档。

另外,除了在极光后台进行推送操作,还可以利用极光提供的服务端SDK或API来完成该工作,请参考我其他的文章。

PhoneGap实现信息推送-基于极光推送(Android版)

标签:

原文地址:http://my.oschina.net/crazymus/blog/376310

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!