让Chathead气泡在安卓中永远运行

问题描述 投票:0回答:2

你好,我想在android studio中为一个应用程序制作一个像facebook那样的聊天头气泡。我已经能够使用Overlay成功地显示气泡,并使它成为一个服务,即使在应用程序关闭后继续运行(没有被杀死)。然而,当我打开另一个应用程序或如果我不使用我的手机超过10分钟,chathead气泡消失了,不像Facebook的气泡。我怎样才能让气泡在主屏幕和其他应用上显示更长的时间(可能是永远)?

为了了解情况,我用了 https:/www.androhub.comandroid-floating-widget-like-facebook-messenger-chat-head 来制造气泡,使用 View 和a Service. 先谢谢你

java android android-studio android-service
2个回答
0
投票

你的app的服务会被android系统杀死,以节省电池。没有确切而简单的方法来做到这一点。你必须实现多种方法来做到这一点。

  1. 使用前台服务(你可能已经这样做了,但只是为了以防万一,如果没有。)
  2. 要求限制电池优化的权限。
  3. 在一些设备中,如小米和Vivo,你需要特殊的权限,总是在后台运行要求。
  4. 要求用户将应用锁定在最近的标签中,这样它就不会被系统杀死。

0
投票
  1. 如果你要实现服务,请重写onStartCommand(),并返回START_STICKY作为结果。它将告诉系统,即使它会因为内存不足而想杀死你的服务,也应该在内存恢复正常后立即重新创建。

  2. 如果你不确定第一种方法是否有效,你将不得不使用AlarmManager http:/developer.android.comreferenceandroidappAlarmManager.html。 . 这是一个系统服务,它将在你告诉的时候执行动作,例如定期执行。这将确保当你的服务被终止,甚至整个进程死亡(例如强制关闭)时,它将被AlarmManager 100%重新启动。

© www.soinside.com 2019 - 2024. All rights reserved.