如果更新或者升级后系统内置应用,遇到重启Android系统后内置应用被还原,那是因为手动安装的APK版本号和系统内置API版本号一样。
<strong>1、Android系统应用更新机制</strong> 系统为每个应用在AndroidMainfest.xml提供了versionName、versionCode两个属性。 versionName:String类型,用来给应用的使用者来查看版本. versionCode:Integer类型,作为系统判断应用是否能升级的依据。
<strong>2、Android系统内置应用更新判断代码</strong> 代码来自frameworks/base/services/java/com/android/server/PackageManagerService.java 中 scanPackageLI函数的package更新判断条件(约第2580-2621行附近) // First check if this is a system package that may involve an update if (updatedPkg != null && (parseFlags&PackageParser.PARSE_IS_SYSTEM) != 0) { if (!ps.codePath.equals(scanFile)) { // The path has changed from what was last scanned... check the // version of the new path against what we have stored to determine // what to do. if (pkg.mVersionCode < ps.versionCode) {

原文地址: Android系统内置应用更新或升级后被还原的原因|http://orgcent.com/android-system-app-update-restore/

更多相关文章

  1. RxJava(十)switchIfEmpty 操作符实现 Android(安卓)检查本地缓存逻
  2. MVP模式的Android(安卓)调用系统拍照,相册,剪裁,适配到7.0,修复拍照
  3. Android(安卓)8.0源码编译问题记录
  4. input subsystem
  5. Android(安卓)Widget事件
  6. android ListView中自定义SimpleAdapter动态添加ratingBar及图片
  7. android编译系统(一):GUN Make简介
  8. android Device Admin以及hasSystemFeature(String string)
  9. Android(安卓)Do not keep activities选项分析

随机推荐

  1. FFmpeg交叉编译
  2. 登录XML
  3. Drawable
  4. android LinearLayout 垂直滚动
  5. android:process=":remote"
  6. android 8.1 移除hifi_sensor feature
  7. android基础(对话框风格Activity实现)
  8. 2010.10.26———Android(安卓)01
  9. sadasd
  10. Android帧布局-实现渐变效果