Android 在后台保持永久连接(同一LAN),不使用GCM

Android 在后台保持永久连接(同一LAN),不使用GCM,android,google-cloud-messaging,httpurlconnection,Android,Google Cloud Messaging,Httpurlconnection,我需要在后台保持打开的连接,即使应用程序未运行。不可能使用GCM,因为连接将与服务器位于同一LAN中,并且设备可能没有工作的Internet连接。 连接将是某种本地推送,因此设备将不时地获取一些简短的相关数据(除了保持活动的消息) 我的使用情况很具体,所以我可以认为电池不是问题。我可能会显示一个巨大的红色警告,表示启用该功能将耗尽电池电量,或者在设备未充电时禁用它 另一方面,非常重要的是,具有连接的进程不会被Android“随机”杀死 我曾想过通过一项服务来实现这一点,但我想听听其他人的意见。考

我需要在后台保持打开的连接,即使应用程序未运行。不可能使用GCM,因为连接将与服务器位于同一LAN中,并且设备可能没有工作的Internet连接。 连接将是某种本地推送,因此设备将不时地获取一些简短的相关数据(除了保持活动的消息)

我的使用情况很具体,所以我可以认为电池不是问题。我可能会显示一个巨大的红色警告,表示启用该功能将耗尽电池电量,或者在设备未充电时禁用它

另一方面,非常重要的是,具有连接的进程不会被Android“随机”杀死

我曾想过通过一项服务来实现这一点,但我想听听其他人的意见。考虑到前面提到的限制,也许有更好的方法来实现这一点

“即使应用程序未运行”

这意味着你的应用程序没有运行,并且没有进程。如果不使用第三方应用程序(如GCM服务)唤醒你的应用程序,你将一无所获

但是,您可以让一个服务保持活动状态,并保持与服务器(例如,XMPP服务器)的连接,以接收通知并唤醒该活动

您也可以在单独的应用程序中执行此操作

例如,您可以使用由alarm manager启动的常规看门狗来增加健壮性