google gcm推送注意事项
最近要做google GCM推送,所以硬着头皮看了官方英文文档,现对文中需要特别注意的地方做出总结:
1、google官方例子此:https://github.com/google/gcm
2、不应该经常性注销,因为注销和再次注册会各花费5分钟,也就是10分钟
3、要运行在android2.2或者以上的版本,而且手机上安装有google play store
4、在Manifest.xml文件中添加如下权限:
com.google.android.c2dm.permission.RECEIVE、
android.permission.INTERNET、
android.permission.WAKE_LOCK、
applicationPackage + ".permission.C2D_MESSAGE"、
com.google.android.c2dm.intent.RECEIVE、
com.google.android.c2dm.permission.SEND、
具体如下:
<manifest package="com.example.gcm" ...> <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="17"/> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.GET_ACCOUNTS" /> <uses-permission android:name="android.permission.WAKE_LOCK" /> <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" /> <permission android:name="com.example.gcm.permission.C2D_MESSAGE" android:protectionLevel="signature" /> <uses-permission android:name="com.example.gcm.permission.C2D_MESSAGE" /> <application ...> <receiver android:name=".GcmBroadcastReceiver" android:permission="com.google.android.c2dm.permission.SEND" > <intent-filter> <action android:name="com.google.android.c2dm.intent.RECEIVE" /> <category android:name="com.example.gcm" /> </intent-filter> </receiver> <service android:name=".GcmIntentService" /> </application> </manifest>
5、最小版本:android:minSdkVersion="8"
6、在注册的时候要把registration ID 和 应用程序版本给记录下来,每次启动的时候对版本号进行对比,如果有更新要重新注册