phonegap消息推送

jasonrenyu 2013-06-27

      这几天在摸索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里面加上
<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上的通知推送即可成功。
 

相关推荐

malonely / 0评论 2013-03-07