android - 如何知道 Android 中的新服务何时准备就绪?

标签 android service

我使用 startService() 来启动一个新服务。服务准备就绪需要一些时间。如果我立即调用 ServiceManager.getService(),它将返回 null。我没有找到任何关于此的阻止功能。如何知道服务何时准备好?是否有任何阻止功能或任何系统消息告诉我?

另一种方法是将ServiceManager.getService()放在一个while循环中,但我认为这不太好,因为它会锁定UI。

最佳答案

您可能应该重组代码以使用 Context#bindService . bindService 允许您提供 ServiceConnection当服务准备好进行交互时,将调用其 onServiceConnected 方法的对象。

关于android - 如何知道 Android 中的新服务何时准备就绪?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4789822/

相关文章:

android - 使用服务绑定(bind)从服务更新 Activity TextView

WCF 服务限制

android - 从图库中选择图像并保存以备将来使用

android - 如何在选项卡中添加 float 操作按钮?

java - 暂停 AnimationDrawable 并从同一帧恢复

java - 在后台启动应用程序

java - 如何将模块安装为服务 - Android

android - 工具栏顶部的上下文叠加堆叠

android - 如何添加 ViewPager 指示器标题,如 Google+ 应用程序

android - 具有 Intent 操作的 onStartCommand 与绑定(bind)服务