首页 > 代码库 > 友盟(四)消息推送

友盟(四)消息推送

一、添加应用
    http://message.umeng.com 
     选择进行数据统计的应用,获得集成推送的相关信息如下:
技术分享
技术分享
二、集成
1.快速集成
1)下载友盟消息推送sdk
    com.umeng.message.lib.jar
    添加到项目中
2)配置权限
  1. <uses-permission android:name="android.permission.INTERNET" />
  2. <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
  3. <uses-permission android:name="android.permission.READ_PHONE_STATE" />
  4. <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
  5. <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
  6. <uses-permission android:name="android.permission.WAKE_LOCK" />
  7. <uses-permission android:name="android.permission.VIBRATE" />
  8. <uses-permission android:name="android.permission.WRITE_SETTINGS" />
  9. <!--【可选】根据需要添加-->
  10. <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
3)添加组件
  1. <receiver
  2. android:name="com.umeng.message.NotificationProxyBroadcastReceiver"
  3. android:exported="false" >
  4. </receiver>
  5. <receiver android:name="com.umeng.message.RegistrationReceiver" >
  6. <intent-filter>
  7. <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
  8. </intent-filter>
  9. <intent-filter>
  10. <action android:name="android.intent.action.PACKAGE_REMOVED" />
  11. <data android:scheme="package" />
  12. </intent-filter>
  13. <!--【可选】根据需要添加-->
  14. <intent-filter>
  15. <action android:name="android.intent.action.BOOT_COMPLETED" />
  16. </intent-filter>
  17. </receiver>
  18. <receiver android:name="com.umeng.message.UmengBroadcastReceiver" >
  19. <intent-filter>
  20. <action android:name="org.agoo.android.intent.action.RECEIVE" />
  21. </intent-filter>
  22. <intent-filter>
  23. <action android:name="【应用包名】.intent.action.COMMAND" />
  24. </intent-filter>
  25. <intent-filter>
  26. <action android:name="org.agoo.android.intent.action.RE_ELECTION_V2" />
  27. </intent-filter>
  28. </receiver>
  29. <service
  30. android:name="com.umeng.message.UmengService"
  31. android:exported="true"
  32. android:process=":umengService_v1" >
  33. <intent-filter>
  34. <action android:name="【应用包名】.intent.action.START" />
  35. </intent-filter>
  36. <intent-filter>
  37. <action android:name="【应用包名】.intent.action.COCKROACH" />
  38. </intent-filter>
  39. <intent-filter>
  40. <action android:name="org.agoo.android.intent.action.PING" />
  41. </intent-filter>
  42. </service>
  43. <service
  44. android:name="org.android.agoo.service.ElectionService"
  45. android:exported="true"
  46. android:process=":umengService_v1" >
  47. <intent-filter>
  48. <action android:name="org.agoo.android.intent.action.ELECTION_V2" />
  49. </intent-filter>
  50. </service>
  51. <service android:name="com.umeng.message.UmengIntentService" />
  52. <!-- V1.3.0添加的service,负责下载通知的资源 -->
  53. <service android:name="com.umeng.message.UmengDownloadResourceService" />
4)添加AppKey、ChannelID、Umeng Message Secret
  1. <meta-data
  2. android:name="UMENG_APPKEY"
  3. android:value="xxxxxxxxxxxxxxxxxxxxxxxxxxxx" >
  4. </meta-data>
  5. <meta-data android:name="UMENG_CHANNEL" android:value="Channel ID" > </meta-data>
  6. <meta-data
  7. android:name="UMENG_MESSAGE_SECRET"
  8. android:value="xxxxxxxxxxxxxxxxxxxxxxxxxxxx" >
  9. </meta-data>
    因为之前做友盟统计的时候已经添加过了Umeng Appkey和ChannelID,现在只需要添加Umeng Message Secret即可。

2.快速集成测试
1)开启推送服务
    在入口Activity的onCreate中开启推送服务。
  1. PushAgent mPushAgent = PushAgent.getInstance(context);
  2. mPushAgent.enable();
    相关方法:关闭服务:mPushAgent.disable();
    查询服务是否可用:mPushAgent.isEnabled() 
2)统计应用启动数据
    在所有的Activity的onCreate中调用
  1. PushAgent.getInstance(context).onAppStart();
3)获取Device Token
    必须先启动消息推送服务,才能获取Device Token,同一台设备对应不同的应用,其Token是不一样的。
        String device_token = UmengRegistrar.getRegistrationId(context) 
    技术分享    
    
Device Token:AkZOj3NJpg-qofHq71z61LqdeuGVYsp4YIeeNOTlTdkc

3.推送消息
技术分享
前提条件:添加应用信息
添加测试设备
技术分享
填写推送消息,并发送
技术分享
技术分享
经过测试,没有问题。只是这种推送只能全部推送统一的内容,而且只能是文字信息并且有字数限制。






















友盟(四)消息推送