phonegap消息推送 博客分类: 移动开发 极光消息推送phonegaphtml5
程序员文章站
2024-03-25 18:51:40
...
这几天在摸索jquerymobile+phonegap的app开发方式如何进行消息推送,看了一下网上的消息推送,基本上都是围绕着原生开发进行的,用到的基本上有google的C2DM,轮询以及androidpn。最后选择了极光推送,最主要的原因是搭建简单,以及服务免费。
下面主要围绕这几个方面进行说明,客户端方面:极光推送sdk的集成,以及phonegap集成,以及phonegap利用插件调用极光推送的api。服务器方面主要是在tomcat下给配置好的客户端发送通知。这里主要介绍的android,并且要摒弃dreamwaver的开发方式,改用eclipse开发环境,在这之前我一直用dw开发html app。
首先,极光推送sdk的集成主要参照如下地址的配置:在极光推送官网->文档->入门指南-第三方集成教程或代码里面有链接。
http://www.yelanxiaoyu.com/app/andriod/phonegap-push-%e6%b6%88%e6%81%af%e6%8e%a8%e9%80%81%e5%ae%9e%e7%8e%b0.html
在配置好后,需要参照官网地址:
http://docs.jpush.cn/pages/viewpage.action?pageId=557214
在客户端AndroidManifest.xml中加上
<intent-filter android:priority="1000"
> <!--since
1.3
.
5
-->
<action android:name=
"cn.jpush.android.intent.NOTIFICATION_RECEIVED_PROXY"
/> <!--since
1.3
.
5
-->
<category android:name=
"Your Package"
/> <!--since
1.3
.
5
-->
</intent-filter> <!--since
1.3
.
5
-->
目前官网下载的sdk开发包是1.3.8的,所以以上配置代码需要加进去,另外包名要换成自己的包名。
第二,phonegap的集成。目前网上很多教程有集成phonegap到eclipse的,自己可以参照下列网址进行配置,http://www.phonegapcn.com/developers/get-started-13/get-started
第三,利用插件来调用极光推送的客户端API,目前用html5写的app,想调用java的api,只能利用插件,插件也推荐官网上的。地址在极光推送官网->文档->入门指南-第三方集成教程或代码里面有链接,进行下载。地址https://github.com/unfish/jpush-phonegap-plugin
将JPushUtil.js放到客户端工程,assets->www的根目录下面,将JPushUtilPlugin.java放到src的包下面,并且在res->xml->config.xml里面加上
将JPushUtil.js放到客户端工程,assets->www的根目录下面,将JPushUtilPlugin.java放到src的包下面,并且在res->xml->config.xml里面加上
<plugin name="JPushUtilPlugin" value="com.example.test.JPushUtilPlugin"/>。调用的时候直接在js文件里面window.plugins.JPushUtil.SetAlias(name,null,null);就可以了。其中name为给该客户端设置的别名。
第四,服务端的代码编写,主要参照http://blog.csdn.net/heynine/article/details/8140000,完整拷贝即可以发送成功,需要注意的是在PushMsgUtil.java里面pushMsg方法中username为你极光推送中注册的帐号名。appkeys为你在官网创建的应用的应用详情中即可找到receiver_type设置为3,即Alias。receiver_value为你在客户端文件中调用极光插件时给该用户设置的名字。并且在getVerificationCode()方法中,要和上面的对应上。同时你也可以用官网封装好的方法去写服务端。如果一切没有意外的话,在android上的通知推送即可成功。