我正在开发一个应用程序,在启动时启动一项活动,该活动使用服务(使用startService启动)登录到我的服务器(需要通过facebook登录的活动)。此服务建立XMPP侦听器,之后不执行任何操作,只需等待连接。我希望这项服务能够在设备启动时一直运行。
问题是活动在一段时间后停止,我的服务也停止了。该服务返回START_STICKY所以我期待它能够流连忘返。此外,除等待连接外,该服务不会做任何事情。
该活动具有以下属性: 机器人:excludeFromRecents ="真" 机器人:noHistory ="真" 机器人:launchMode =" singleInstance"
这样它就不会显示在任务列表中(当用户长按主页按钮时)。
当用户长按主页按钮并且服务也结束时,活动停止。我认为应用程序退出的可能性,以及服务也结束的原因。我找不到任何办法让活动不停止。也许因为上述属性而停止了。
那么我该怎样做才能让服务始终保持运行状态。如何防止应用程序被删除。我在某处读到如果我在服务中运行while循环,那么START_STICKY可以保持服务吗? 我可以使用AlarmManager启动服务,但我不希望它很容易停止,然后每次都必须重新启动它。
我不想运行前台服务。我不能在不同的进程中运行该服务,因为我使用的是不使用IPC的现有代码。任何帮助将不胜感激。感谢。