Android 如何确定应用程序是由哪个服务生成的';什么是进程运行?
我的非粘性服务在应用程序被终止后被调用。日志显示:Android 如何确定应用程序是由哪个服务生成的';什么是进程运行?,android,service,process,Android,Service,Process,我的非粘性服务在应用程序被终止后被调用。日志显示: I/ActivityManager﹕ Start proc 26129:****/u0a311 for service com.****/com.urbanairship.analytics.EventService 然后调用我的MultiDexApplication类的onCreate。有没有办法知道它是因为urbanairship的服务而启动的,而不是用户启动的?原因如果应用程序只是由操作系统启动,则会采取不同的操作。我不想在其他进程中
I/ActivityManager﹕ Start proc 26129:****/u0a311 for service com.****/com.urbanairship.analytics.EventService
然后调用我的MultiDexApplication类的onCreate。有没有办法知道它是因为urbanairship的服务而启动的,而不是用户启动的?原因如果应用程序只是由操作系统启动,则会采取不同的操作。我不想在其他进程中运行此服务
EventService在我的清单中声明:
<service
android:name="com.urbanairship.analytics.EventService"
android:label="Event Service" />
谢谢。
我不想在其他进程中运行此服务。
这是什么意思?@pskink在我的清单中,我可以为EventService添加android:process=“:process name”,这使得它可以在其他进程中运行。因此,如果你不想在其他进程中运行此服务。
那么就不要使用“android:进程”
attribute@pskink我不是。我这么说是因为我想要一个解决方案,而不需要在不同的进程中运行服务。将服务移动到不同的进程不是答案。每个进程也会调用您的应用程序。有几种方法可以启动您的进程-推送通知(广播),服务正在重新启动,警报,用户打开应用程序,等等。确定用户是否启动应用程序的唯一真正方法是等待活动启动。操作可以等待到那时吗?我不想在其他进程中运行此服务。
这是什么意思?@pskink在我的清单中,我可以将安卓:process=“:process name“对于EventService,它使其在不同的进程上运行。因此,如果您“不想在不同的进程中运行此服务。”
,则不要使用“android:process”
attribute@pskink我不是。我这么说是因为我想要一个解决方案,而不是在不同的进程中运行服务。将服务移动到不同的进程并不是答案。您的应用程序也将为每个进程调用。有几件事可以启动你的进程-推送通知(广播),重新启动服务,警报,用户打开应用程序,等等。。。确定用户是否启动应用程序的唯一真正方法是等待活动启动。行动能等到那时吗?