第三方SDK:JPush SDK Eclipse
来源:互联网 发布:阿里云服务器续费优惠 编辑:程序博客网 时间:2024/05/29 18:49
JPush是用来推送消息的工具。
情况分2种:
1 只是简单地推送通知,而且不打开这个通知
2 打开这个通知
1 只是简单地推送通知,而且不打开这个通知
只是发送通知,接收通知,不包含接收自定义消息。若需要接收自定义消息,需要创建类继承BroadcastReceiver
步骤:
1 添加.jar和.so文件
2 配置AndroidManifest.xml
3 在application中初始化
准备工作:去官网下载SDK,注册账号。
1 集成sdk
复制 libs/jpush-sdk-release1.x.y.jar 到工程 libs/ 目录下
复制 libs/armeabi/libjpush1xy.so 到工程 libs/armeabi 目录下
2 配置 AndroidManifest.xml
根据 SDK 压缩包里的 AndroidManifest.xml 样例文件,来配置应用程序项目的 AndroidManifest.xml 。
主要步骤为:
复制备注为 "Required" 的部分
将备注为替换包名的部分,替换为当前应用程序的包名
将AppKey替换为在Portal上注册该应用的的Key,例如(9fed5bcb7b9b87413678c407)
注意:只是简单地推送通知,而且不打开这个通知,那么只需要复制备注为 "Required" 的部分,其余的不需要复制。
AppKey是在JPush控制台创建应用拿到的。见下图
3 初始化和设置调试模式
public class MyApplication extends Application {@Overridepublic void onCreate() {//设置调试模式JPushInterface.setDebugMode(true);//初始化JPush的sdkJPushInterface.init(this);super.onCreate();}}注意:若提示“缺少统计代码”,这个只在开发中有,发布后不显示,若想去掉,在mainActivity中添加如下代码
@Overrideprotected void onResume() {JPushInterface.onResume(this);super.onResume();}@Overrideprotected void onPause() {JPushInterface.onPause(this);super.onPause();}
结果如下:
demo:http://download.csdn.net/detail/ss1168805219/9459137
2 第2种情况打开这个通知
比1只是增加了1个activity和receiver,当然这需要在AndroidManifest.xml中配置
JpushReceiver.java copy SDK或JPush 的demo中的即可
public class JpushReceiver extends BroadcastReceiver {private static final String TAG = "JpushReceiver";@Overridepublic void onReceive(Context context, Intent intent) {Bundle bundle = intent.getExtras();Log.d(TAG, "onReceive - " + intent.getAction());if (JPushInterface.ACTION_REGISTRATION_ID.equals(intent.getAction())) {} else if (JPushInterface.ACTION_MESSAGE_RECEIVED.equals(intent.getAction())) {System.out.println("收到了自定义消息。消息内容是:"+ bundle.getString(JPushInterface.EXTRA_MESSAGE));// 自定义消息不会展示在通知栏,完全要开发者写代码去处理} else if (JPushInterface.ACTION_NOTIFICATION_RECEIVED.equals(intent.getAction())) {System.out.println("收到了通知");// 在这里可以做些统计,或者做些其他工作} else if (JPushInterface.ACTION_NOTIFICATION_OPENED.equals(intent.getAction())) {System.out.println("用户点击打开了通知");String url = "";String json = bundle.getString(JPushInterface.EXTRA_EXTRA);try {JSONObject job = new JSONObject(json);url = job.optString("url");} catch (JSONException e) {e.printStackTrace();}// 在这里可以自己写代码去定义用户点击后的行为Intent i = new Intent(context, NewActivity.class); // 自定义打开的界面i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);context.startActivity(i);} else {Log.d(TAG, "Unhandled intent - " + intent.getAction());}}}
</pre><pre code_snippet_id="1606805" snippet_file_name="blog_20160311_5_1507748" name="code" class="java">NewActivity.java :打开通知显示的界面
public class NewActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_new);}}
demo:http://download.csdn.net/detail/ss1168805219/9459149
[第三方开源库:个推 ](http://blog.csdn.net/ss1168805219/article/details/53955886)
[第三方SDK:JPush:Android Studio ](http://blog.csdn.net/ss1168805219/article/details/52443252)
[ 第三方SDK:JPush SDK Eclipse ](http://blog.csdn.net/ss1168805219/article/details/50859280)
- 第三方SDK:JPush SDK Eclipse
- 第三方SDK:JPush:Android Studio
- 第三方SDK
- 第三方sdk接入
- 即时通讯第三方SDK
- 第三方SDK:蒲公英
- 第三方SDK
- 第三方SDK:SMSSDK
- Android开发之第三方推送JPush极光推送知识点详解 学会集成第三方SDK推送
- Unity3D调用第三方SDK(之一)从eclipse到Unity3D
- Unity3D调用第三方SDK(之一)从eclipse到Unity3D.
- Android Studio加载第三方SDK的jar和so库(百度地图、JPush等)的方法
- 常用第三方sdk 整理
- 社会化登陆-第三方SDK
- 第三方SDK分析1
- VS2013加入第三方sdk
- 第三方SDK接入--Vitamio
- iOS 即时通讯第三方SDK
- 识别输入装置ID与InputDevice装置(Improved event management)
- C++运行时多态之虚表
- 对象
- VMmare12.0.0安装RedHat6.5使用net模式上网
- [POJ 3007]Organize Your Train part II[Hash][Trie]
- 第三方SDK:JPush SDK Eclipse
- 排序算法后记
- 3、XML映射文件Mapper
- D10
- js模拟点击事件
- 单循环链表(使用尾指针表示)
- CodeForces-630 M. Turn【求模运算】
- 论一个奇葩应用诞生的前世今生
- vim 比较文件、修改二进制文件