这个blog清楚地解释了它们之间的区别
现在看完这篇文章后,我在使用AndroidManifest.xml查看此服务声明时感到困惑
<service android:name="com.amazon.tablet.myapplication.MyService" android:persistent="true"></service>
到目前为止,我假设/理解在服务声明中制作android:persistent=true
会将服务转为持久性,并在服务声明失效时重新启动。但是,如果没有单独使用persistent=true
的Service.START_STICKY
,我就能够实现这一目标。
android:persistent=true
和这些属性Service.START_STICKY
,Service.START_REDELIVER_INTENT
有什么区别?android:persistent=true
属性声明了该服务,并尝试用adb shell kill <pid>
杀死我的应用程序,但它已重新创建。在这种情况下,我想知道/不理解服务娱乐与应用娱乐之间的区别。1.服务.START_STICKY
这将等待启动服务的意图(一旦与此相关联的进程被杀死)
2. android:persistent =“true”
这将使服务相应地持久化为true / false,并且不会等待再次启动服务的意图(一旦它因LMK而被杀死)
3.服务与应用持久性
通过使服务持久化,这将使与其关联的进程持久化。与应用案例相同。
当您为服务声明一个单独的进程时,您的应用程序将不会持久。