Android 安卓云到设备消息基础
我想将云到设备消息添加到我的应用程序中。是否需要编写服务?Android 安卓云到设备消息基础,android,google-cloud-messaging,Android,Google Cloud Messaging,我想将云到设备消息添加到我的应用程序中。是否需要编写服务? 我关闭了所有关于whatsapp viber等的运行服务。然后,当whatsapp及其服务关闭时,我试图通过whatsapp向我的手机发送消息。我的信息已经传递了。 所以这意味着服务是不必要的 是否需要编写服务 在大多数情况下,是的。这在一定程度上取决于您试图如何响应GCM消息 我的信息已经传递了。所以这意味着服务是不必要的 不,这意味着不需要某种持续运行的服务 GCM消息以广播形式发送。如中所述,清单注册的BroadcastRecei
我关闭了所有关于whatsapp viber等的运行服务。然后,当whatsapp及其服务关闭时,我试图通过whatsapp向我的手机发送消息。我的信息已经传递了。 所以这意味着服务是不必要的 是否需要编写服务 在大多数情况下,是的。这在一定程度上取决于您试图如何响应GCM消息 我的信息已经传递了。所以这意味着服务是不必要的 不,这意味着不需要某种持续运行的服务 GCM消息以广播形式发送。如中所述,清单注册的BroadcastReceiver是必需的 但是,
BroadcastReceiver
的onReceive()
方法在主应用程序线程上被调用,因此,如果响应GCM消息的工作将超过几毫秒,如果我们的UI恰好位于前台,我们就无法在onReceive()
上进行该工作,而不将jank引入我们的UI。而且,由于只有在调用onReceive()
时才会认为清单注册的BroadcastReceiver
正在运行,因此我们无法安全地分叉我们自己的线程,因为我们的进程可能会在线程结束之前终止
因此,经常接收GCM消息的
BroadcastReceiver
会将实际工作委托给IntentService
。这也包含在本节中。非常感谢您的回复。我想通过GCM显示新公告的标题,当用户单击通知时,我想在我的应用程序中显示公告正文。在这种情况下,您认为有必要提供服务吗?@BilalTürk:如果您不需要执行任何磁盘I/O来创建通知
,那么只需在onReceive()中执行即可。但是,您可能希望使用事件总线(例如,LocalBroadcastManager
,greenrobot的事件总线)来处理GCM消息传入且您的应用程序已处于前台的情况。