我已按照说明在此处设置Android GCM客户端应用程序,并且特别针对此摘录存在问题:
对于扩展WakefulBroadcastReceiver的现有应用程序,Google建议迁移到GCMReceiver和GcmListenerService.要迁移:在应用清单中,将GcmBroadcastReceiver替换为"com.google.android.gms.gcm.GcmReceiver",并将当前扩展IntentService的服务声明替换为新的GcmListenerService从客户端代码中删除BroadcastReceiver实现重构当前IntentService服务实现使用GcmListenerService
我在GCM实现中看到的大多数示例都使用了一个扩展的类WakefulBroadcastReceiver.比如这个.当您这样做时,您有机会使用NotificationManager和自定义通知图标,声音等.但是,如果您遵循Google的建议,我不确定如何自定义通知.大多数使用GcmListenerServiceGoogle建议的示例都会覆盖该onMessageReceived方法.但是,只有在收到通知时应用程序已经位于前台,或者用户单击通知本身时,才会调用该方法.该方法不是自定义通知声音的正确位置.在调用该方法之前已经播放了声音.
所以,如果我需要自定义通知声音,我应该覆盖一个不同的方法GcmListenerService,但是没有文档显示哪一个.另一种选择是使用此处sound描述的属性.但是你必须自己将声音文件捆绑在应用程序的目录中.这似乎是错的.我宁愿只使用系统提供的声音,主题等.res/raw
思考?