android系统的应用配置的persistent属性

persistent应用为常驻内存应用,android系统在开机是会预先启动system下面配置了persistent属性的应用,并且死后会被系统重新启动,在systemReady方法中调用

android系统的应用配置的persistent属性_第1张图片

但是并不意味着应用在AndroidManifest.xml的Application节点配置android:persistent=true,就能开机启动,只有当此应用是系统应用并且配置了此属性才可以;

原因一:PackageParser中解析Application节点方法parseApplication方法有余下条件判断,可见应用必须是系统应用,配置此属性才有用;

android系统的应用配置的persistent属性_第2张图片

原因二:在启动应用进程的时候会在PackageManageService中addAppLocked方法做余下判断,必须是系统应用同事具备persistent属性才会设置app.persistent=true;

你可能感兴趣的:(android系统)