我正在尝试从启动器活动的 onCreate() 启动服务。
我创建了一个意图对象并调用了 startService()。这会在新线程中调用服务吗?我可以看到只有在活动的 onCreate() 退出后才调用服务的 onStartCommand 。
这是真的 ?如果是如何并行启动服务,即oncreate可以继续并行退出服务的onStartCommand。
提前致谢。
这会在新线程中调用服务吗?
在 Java 中,对象不在线程上运行。方法在线程上运行。
我可以看到只有在活动的 onCreate() 退出后才调用服务的 onStartCommand 。
正确的。startService()
只是将启动服务的请求排队。在您将主应用程序线程的控制权返回给框架之前,Android 无法做到这一点。只要onCreate()
正在运行,您就在占用主应用程序线程。您需要确保每个回调(例如,onCreate()
)非常非常快,理想情况下的持续时间远低于 1 毫秒。
如果是如何并行启动服务,即oncreate可以继续并行退出服务的onStartCommand。
那是不可能的,抱歉。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句