我们的任务管理器去关闭一个task,用到的方法是 android.app.ActivityManager.restartPackage。但是这里有一个不完善的地方就是,launcher和contacts都具有android:sharedUserId="android.uid.shared” 属性。restartPackage方法它会关掉与这个ap关联(同ID)的所有ap。

这里我去关掉cantacts,在log里可以看到,andorid会同时关掉launcher,输入法,还有acore进程:

DEBUG/ActivityManager(53): Force removing process ProcessRecord{438a46d0 104:android.process.acore/10001} (android.process.acore/10001)
DEBUG/ActivityManager(53): Force removing process ProcessRecord{43897660 192:com.android.inputmethod.latin/10001} (com.android.inputmethod.latin/10001)

INFO/WindowManager(53): WIN DEATH: Window{43910d90com.android.contacts/com.android.contacts.DialtactsContactsEntryActivity paused=false}
INFO/WindowManager(53): WIN DEATH: Window{4379ea98com.android.launcher/com.android.launcher.Launcher paused=false}
INFO/Process(53): Sending signal. PID: 192 SIG: 9
DEBUG/ActivityManager(53): Force finishing activitycom.android.contacts/.DialtactsContactsEntryActivity

我去看了一个写得比较好的类似软件,它在关contact的时候,lancher也是会被关掉的。但是我们不用去担心用户自己安装的程序也具有android:sharedUserId="android.uid.shared”属性,因为这样的程序只能在build整个系统时放进去(就是系统软件),手动安装是没有权限的。提示错误:

ERROR/PackageManager(53): Package XXXX has no signatures that match those in shared user android.uid.system; ignoring!

另外的关进程的方法,要去获得它的pid,再调用android.os.Process.killProcess(),但是killProcess里明确说明了:packages sharing a common UID will also be able to kill each other's processes.

android.process.acore 應該是一些基本功能的載入程序.
從 Source code 看來, 它應包含以下項目.
1. 聯絡人
2. Google search
3. Global search (不太明瞭它的功能)
4. 程式啟動列表 (就是主畫面下方可往上拉起的來的那鍋)
5. 應用程式清單資料庫處理元件 (Applications Provider)
6. 聯絡人資料庫處理元件 (Contact Provider)
7. Google 聯絡人資料庫處理元件 (Google Contact Provider)
8. 使用者自定詞彙資料庫處理元件 (User Dictionary Provider)

更多相关文章

  1. Android中的程序安装和卸载
  2. android handler发送消息需要注意的地方
  3. CommonsWare Android(安卓)Components
  4. Flash移动开发高级教程——创建Anroid & iPhone应用
  5. Android中如何获取系统中所有的应用程序
  6. Android中调用外部程序的方法[整理]
  7. Android(安卓)Permission 大全
  8. Android开发者指南(18) ―― Web Apps Overview
  9. android 退出应用方法一:点击两次退出应用

随机推荐

  1. Android(安卓)The connection to adb is
  2. Android(安卓)Studio用法之ListView(图文
  3. (Android、Java) AES加密方法
  4. Android(安卓)添加动画的标签栏
  5. Gradle中的常量
  6. 【Android(安卓)开发教程】保存到外部存
  7. 用kotlin写了一些android常用的一些工具
  8. Android(安卓)Gson深入分析
  9. Windows 环境下载 Android(安卓)源码
  10. Gradle???????