我想将 GCMIntentService 放在我的包根目录以外的目录中。
GCM文档指出
By default, it must be named .GCMIntentService, unless the application uses a custom BroadcastReceiver that redefines its name.
我的问题是 - 我如何创建这个“自定义广播接收器”?
我想将 GCMIntentService 放在我的包根目录以外的目录中。
GCM文档指出
By default, it must be named .GCMIntentService, unless the application uses a custom BroadcastReceiver that redefines its name.
我的问题是 - 我如何创建这个“自定义广播接收器”?
基本文档让您将以下内容添加到清单中:
<receiver android:name="com.google.android.gcm.GCMBroadcastReceiver" android:permission="com.google.android.c2dm.permission.SEND" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<action android:name="com.google.android.c2dm.intent.REGISTRATION" />
<category android:name="my_app_package" />
</intent-filter>
</receiver>
这指向 GCM 提供BroadcastReceiver
的将事件路由到您的.GCMIntentService
. 如果您希望您的服务驻留在其他包中,则需要提供自己的BroadcastReceiver
. 这可能就像创建一个子类GCMBroadcastReceiver
和覆盖getGCMIntentServiceClassName()
以返回要使用的服务的完全限定类名一样简单。