① android 进程被系统杀死之后,app应该如何重新启动
你可以用Service的,onStartCommand方法的返回值,你可以上网搜下这个,希望对你有用
② Android App安装以及启动流程
Android App的安装可以分为有界面的安装和无界面的安装。
有界面的安装其实就是调用系统App(PackageInstaller)咐码去安装apk,打开安装apk应用之后,点击安装按钮执行startInstall方法,然后就进入安装中界面开始安装,安装成功或者衡族哪失败都会有对应的回调。内部其实也是使用PackageManager的installExistingPackage方法,通过binder机制,调用到PackageManagerService的installExistingPackage方法,最终调用到installExistingPackageAsUser方法安装,而 安装的核心原理其实就是将apk文件拷贝到系统可识别的重要的文件目录 :
无界面安装是调用adb命令,执行到一个c写的commandline脚本,调用 install_app 方法,然后再调用 pm_command ,然后执行到pm脚本,执行 run 方法,调用 runinstall ,然后调用 installPackageAsUser 通过AMS执行安装。
说到App的启动,就需要从穗则开机开始说起,Android开机会先把所有应用安装一遍就是把apk拷贝到对应的目录(这也是Android开机慢的原因)。
整个流程如下:
其实App的启动,除了刚开机是不一样之外,正常时候基本与Activity的启动非常接近。
③ Android App 开机自启动
<article class="_2rhmJa">
Android 设备开机自启动的可以用广播实现,因为 Android 设备开机时会发送一条开机广播 "android.intent.action.BOOT_COMPLETED"。接收后实现启动就完成了。
接下来是准备工作
如果按照上面的全部步骤后操作后,重启没有自动启动程序,怎么办呢?是怎么回事呢?
*那么首先请检查一下你的手机是不是安装了360等安全助手之类的软件,如果有,请在软件的自启动软件管理中将app设置为允许
*我的手机没有安装这些软件,但是手机中自带了安全助手,有的手机系统设置里面自带了自启动软件管理的功能 ,所以在这里将我们的app设置为允许开机启动),重启手机,测试是否成功。
然而并没有成功
接收不到BOOT_COMPLETED广播可能的原因
(1)、BOOT_COMPLETED对应的action和uses-permission没有一起添加
(2)、应用安装到了sd卡内,安装在sd卡内的应用是收不到BOOT_COMPLETED广播的
(3)、系统开启了Fast Boot模式,这种模式下系统启动并不会发送BOOT_COMPLETED广播
(4)、应用程序安装后重来没有启动过,这种情况下应用程序接收不到任何广播,包括BOOT_COMPLETED、ACTION_PACKAGE_ADDED、CONNECTIVITY_ACTION等等。
Android3.1之后,系统为了加强了安全性控制,应用程序安装后或是(设置)应用管理中被强制关闭后处于stopped状态,在这种状态下接收不到任何广播,除非广播带有FLAG_INCLUDE_STOPPED_PACKAGES标志,而默认所有系统广播都是FLAG_EXCLUDE_STOPPED_PACKAGES的,所以就没法通过系统广播自启动了。所以Android3.1之后
(1)、应用程序无法在安装后自己启动
(2)、没有ui的程序必须通过其他应用激活才能启动,如它的Activity、Service、Content Provider被其他应用调用。
存在一种例外,就是应用程序被adb push you.apk /system/app/下是会自动启动的,不处于stopped状态。
并不太懂 我的APP启动后 已经收到广播
第一种方式 我再模拟器上 测试 可以 android 9.0版本
桌面设置也会把你的app当成一个桌面主题,还有一个选项是系统桌面,你需要设置成自己的app
如果找不到桌面设置选项,可以从手机设置–应用程序-查看所有应用程序(包括系统的应用程序),找到桌面程序之类的字眼的应用,清楚其默认设置。
④ Android 5.0系统app经常重启怎么办
很多用户报告说,安卓5.0中的应用似乎会在后台频繁重启,明显不正常,而且如果设备长时间不重新启动一次,系统和应用的性能也会大大下降,老早轮反应开始迟钝。
安卓的后台管理机制一直颇受诟病,安睁携卓5.0虽然没有明确提及这方面的变化,但改进是必然的,只不过因为同时引入了64位架构支持,ART运行时变为默认,难免会带来一些意想不到的问题。
你离开一个侍信安卓应用的时候,如果没有选择退出,它会驻留在后台,等待你回去,或者在系统需要内存的时候自动关闭它,但是在安卓5.0里,即便是某个应用有着持续的通知(比如说音乐播放器),也会经常被关闭。
这可能是安卓5.0的内存管理机制出了点小故障,在内存余量还很充足的时候就过于频繁地关闭应用,或者是内存泄露。
ps:因为android5.0使用了新的一些框架与技术,而我们的app可能不兼容所以导致此原因了,在系统未成熟之前 最好不要升级吧。
⑤ androidapp静默启动另外一个app
androidapp静默启动另卖弯外一个app步骤流程如下:
1、App-2.apk作肢耐为资源,放到App-1的assert目历配春录下。
2、将App-1称为主进程,在主进程App-1中,静默启动App-2(子进程)。