parse push 讯息推送学习笔记(Android消息推送解决方案 备选)
parse push 消息推送学习笔记(Android消息推送解决方案 备选)
3.AndroidMainfest.xml设置这里设置权限、广播、Service等。
添加服务信息:
4.订阅Push通知
a)最后一个参数YourActivity.class,是指点击任务栏推送消息时接收处理的Activity,可以从getIntent中取 到推送数据,例如 :
b) 这段代码也可以放到Application里面,放在Parse.initialize后面。
实现效果:
可能在开发Android中有用到消息推送,今天学习的就是parse消息推送解决方法.
parse push官网。猛击这里 https://www.parse.com/
1.我们来创建一个应用。需要注册。注册后按照提示 给你id 和key 即可。我的注册完毕。已经创建了一个应用app.
下载sdk 到你的android应用的libs文件夹下也可以点击这里下载 猛击这里 parselib.jar
2.按照教程操作。添加相应的代码如上。
Parse.initialize(this, "your application id", "your client key");
3.AndroidMainfest.xml设置这里设置权限、广播、Service等。
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> <uses-permission android:name="android.permission.VIBRATE" />
添加服务信息:
<service android:name="com.parse.PushService" /> <receiver android:name="com.parse.ParseBroadcastReceiver"> <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED" /> <action android:name="android.intent.action.USER_PRESENT" /> </intent-filter> </receiver>
4.订阅Push通知
PushService.subscribe(this, "", YourActivity.class); PushService.setDefaultPushCallback(this, YourActivity.class);注意:
a)最后一个参数YourActivity.class,是指点击任务栏推送消息时接收处理的Activity,可以从getIntent中取 到推送数据,例如 :
b) 这段代码也可以放到Application里面,放在Parse.initialize后面。
5 其他需要注意事项。
a).测试过程中发现,按照快速开发文档,最后点Send Temp Push没用,还以为失败了,直接进入 应用后台的Push Notifications,点击Send a push,然后就可以发送消息了。发送成功一次后,
后面都很快了。
b). 注意要在后台Settings的Push notifications中启用Client push,设置为ON即可。
如下图所示。
c).Parse Push支持IOS和Android的通知服务。
我的部分代码(你需要更换你的app对应的key以及id 我的只对我的app生效。
Parse.initialize(this, "n3GGDen4sv03LFrIp9iM4fxhnwaWh6v2iRt5o8B2", "WP1tIRg40Wi2XRHjCVw1dIOwPkaMHuIELFGY6DrD");
全部ManinActivity测试代码如下:
package com.lxd.parsepurse.ui; import android.app.Activity; import android.os.Bundle; import com.parse.Parse; import com.parse.ParseAnalytics; import com.parse.ParseObject; import com.parse.PushService; public class MainActivity extends Activity { /** * from : t.qq.com/lixiaodaoaaaa ***** weibo.com/lixiaodaoaaa test by : * lixiaodaoaaa */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Parse.initialize(this, "n3GGDen4sv03LFrIp9iM4fxhnwaWh6v2iRt5o8B2", "WP1tIRg40Wi2XRHjCVw1dIOwPkaMHuIELFGY6DrD"); ParseAnalytics.trackAppOpened(getIntent()); Test(); getPush(); } private void getPush() { PushService.subscribe(this, "", MainActivity.class); PushService.setDefaultPushCallback(this, MainActivity.class); } private void Test() { ParseObject testObject = new ParseObject("TestObject"); testObject.put("foo", "lixiaodaoaaa is a good boyd"); testObject.saveInBackground(); } }
测试效果如下: