使用Bmob ---扩展服务(Android消息推送)
来源:互联网 发布:syse Linux 进入图形化 编辑:程序博客网 时间:2024/04/29 12:17
1.在Bmob官方网站的下载界面中,选择下载AndroidSDK,将下载的zip压缩包进行解压,得到bmobPush_版本号.jar,然后将它放在项目根目录下的"libs"目录中。
2.在应用程序AndroidManifest.xml文件中添加相应的权限:
<permission android:name="cn.bmob.permission.push" android:protectionLevel="normal" > </permission> <uses-permission android:name="cn.bmob.permission.push" /> <!-- 添加自定义的权限 --> <uses-permission android:name="android.permission.READ_LOGS" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <uses-permission android:name="android.permission.WAKE_LOCK" /> <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.VIBRATE" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:name="android.permission.RECEIVE_USER_PRESENT" />
3.在应用程序AndroidManifest.xml文件中注册BmobPush SDK运行所需的推送服务和消息接收器:
<service android:name="cn.bmob.push.lib.service.PushService" android:exported="true" android:label="PushService" android:permission="cn.bmob.permission.push" android:process="cn.bmob.push" > <intent-filter> <action android:name="cn.bmob.push.lib.service.PushService" /> </intent-filter> </service> <receiver android:name="cn.bmob.push.PushReceiver" > <intent-filter android:priority="2147483647" > <!-- 优先级加最高 --> <!-- 系统启动完成后会调用 --> <action android:name="android.intent.action.BOOT_COMPLETED" /> <!-- 解锁完成后会调用 --> <action android:name="android.intent.action.USER_PRESENT" /> <!-- 监听网络连通性 --> <action android:name="android.net.conn.CONNECTIVITY_CHANGE" /> </intent-filter> </receiver> <receiver android:name=".PushReceiver" > <intent-filter> <action android:name="cn.bmob.push.action.MESSAGE" /> </intent-filter> </receiver>
4.在activity_main.xml文件中添加控件。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" > <Button android:id="@+id/push" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBottom="@+id/query_btn" android:layout_alignRight="@+id/button1" android:text="Push" android:onClick="Push" /></RelativeLayout>5.修改ActivitMain.java文件。
public class MainActivity extends Activity {private EditText mName;private EditText mFeedback;private EditText mQuery;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);// BmobPush的SDK初始化,并启动BmobInstallation.getCurrentInstallation(this).save();BmobPush.startWork(this, "0f83bf800fee187180e4191c4daecd68");}public void Push(View view) {BmobPushManager push = new BmobPushManager(MainActivity.this);push.pushMessageAll("Test");}}
6.在应用程序中创建一个消息接收器。
Push消息通过action=cn.bmob.push.action.MESSAGE的Intent把数据发送给客户端PushReceiver,消息格式由应用自己决定,PushService只负责把服务器下发的消息以字符串格式透传给客户端。PushReceiver代码示例如下:
public class PushReceiver extends BroadcastReceiver {String message = "";@Overridepublic void onReceive(Context context, Intent intent) {if (intent.getAction().equals(PushConstants.ACTION_MESSAGE)) {String msg = intent.getStringExtra(PushConstants.EXTRA_PUSH_MESSAGE_STRING);Toast.makeText(context, msg, Toast.LENGTH_SHORT).show();JSONTokener jsonTokener = new JSONTokener(msg);try {JSONObject object = (JSONObject) jsonTokener.nextValue();message = object.getString("alert");//获取具体的消息内容} catch (JSONException e) {e.printStackTrace();}//把Notification显示在通知中NotificationManager manager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);Notification notification = new Notification(R.drawable.ic_launcher, "Notification comes",System.currentTimeMillis());notification.setLatestEventInfo(context, "Bmob Test", message, null);manager.notify(R.drawable.ic_launcher, notification);}}}
0 0
- 使用Bmob ---扩展服务(Android消息推送)
- Android实战——第三方服务之Bmob后端云的推送服务的集成和使用(三)
- Android后端服务之Bmob使用
- 使用Google Cloud Messaging (GCM)服务实现Android消息推送
- Bmob文档阅读6-消息推送
- android通过服务实现消息推送
- android通过服务实现消息推送
- android通过服务实现消息推送
- Android后端服务之Bmob
- bmob 后台云服务使用
- Android使用NotificationManager来进行任务栏通知(使用Bmob第三方推送)
- 使用GCM服务(Google Cloud Messaging)实现Android消息推送
- 使用GCM服务(Google Cloud Messaging)实现Android消息推送
- 使用GCM服务(Google Cloud Messaging)实现Android消息推送
- 使用GCM服务(Google Cloud Messaging)实现Android消息推送
- WindowsPhone消息推送服务
- WindowsPhone消息推送服务
- 小米消息推送服务
- Linxu笔记(11): Linux系统管理常用命令
- 判断webbrowser页面是否完全加载完毕的方法
- Android笔试总结
- java.util.LinkedList源码分析
- Unix Domain Socket– IPC通信机制
- 使用Bmob ---扩展服务(Android消息推送)
- 如何在web页面使用自定义字体
- S域到Z域到差分方程
- UITextField控件 -- @ShinePug
- 第一篇blog——以此记录我学习的过程
- JSP 原理
- 图遍历-广度优先
- NYOJ 276 比较字母大小
- 邮箱验证