欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

phonegap消息推送

程序员文章站 2022-05-06 20:08:51
...

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