通過應(yīng)用商店更新高版本的系統(tǒng)app校读,在升級(jí)完成后重啟會(huì)刪除掉新安裝的app沼侣?

通過應(yīng)用商店更新高版本的系統(tǒng)app,在升級(jí)完成后重啟會(huì)刪除掉新安裝的app歉秫?

解決方法:

修改frameworks/base/services/java/com/android/server/pm/PackageManagerService.java注釋掉紅色的部分

if?(pkg.mVersionCode?<=?ps.versionCode)?{

//?The?system?package?has?been?updated?and?the?code?path?does?not?match????????????????????//?Ignore?entry.?Skip?it.

Log.i(TAG,?"Package?"?+?ps.name?+?"?at?"?+?scanFile

+?"?ignored:?updated?version?"?+?ps.versionCode

+?"?better?than?this?"?+?pkg.mVersionCode);

if?(!updatedPkg.codePath.equals(scanFile))?{

Slog.w(PackageManagerService.TAG,?"Code?path?for?hidden?system?pkg?:?"

+?ps.name?+?"?changing?from?"?+?updatedPkg.codePathString

+?"?to?"?+?scanFile);

updatedPkg.codePath?=?scanFile;

updatedPkg.codePathString?=?scanFile.toString();

//?This?is?the?point?at?which?we?know?that?the?system-disk?APK

//?for?this?package?has?moved?during?a?reboot?(e.g.?due?to?an?OTA),

//?so?we?need?to?reevaluate?it?for?privilege?policy.

if?(locationIsPrivileged(scanFile))?{

updatedPkg.pkgFlags?|=?ApplicationInfo.FLAG_PRIVILEGED;

}

}

updatedPkg.pkg?=?pkg;

mLastScanError?=?PackageManager.INSTALL_FAILED_DUPLICATE_PACKAGE;

return?null;

}/*else?{

//?The?current?app?on?the?system?partion?is?better?than

//?what?we?have?updated?to?on?the?data?partition;?switch

//?back?to?the?system?partition?version.

//?At?this?point,?its?safely?assumed?that?package?installation?for

//?apps?in?system?partition?will?go?through.?If?not?there?won't?be?a?working

//?version?of?the?app

//?writer

synchronized?(mPackages)?{

//?Just?remove?the?loaded?entries?from?package?lists.

mPackages.remove(ps.name);

}

Slog.w(TAG,?"Package?"?+?ps.name?+?"?at?"?+?scanFile

+?"reverting?from?"?+?ps.codePathString

+?":?new?version?"?+?pkg.mVersionCode

+?"?better?than?installed?"?+?ps.versionCode);

InstallArgs?args?=?createInstallArgs(packageFlagsToInstallFlags(ps),

ps.codePathString,?ps.resourcePathString,?ps.nativeLibraryPathString);

synchronized?(mInstallLock)?{

args.cleanUpResourcesLI();

}

synchronized?(mPackages)?{

mSettings.enableSystemPackageLPw(ps.name);

}

}???*/

根本原因:

Google為APK定義了兩個(gè)關(guān)于版本屬性:VersionCode和VersionName蛾洛,他們有不同的用途。

VersionCode:對(duì)消費(fèi)者不可見雁芙,僅用于應(yīng)用市場轧膘、程序內(nèi)部識(shí)別版本,判斷新舊等用途兔甘』寻—整數(shù)值,代表應(yīng)用程序代碼的相對(duì)版本洞焙,也就是版本更新過多少次蟆淀。整數(shù)值有利于其它程序比較,檢查是升級(jí)還是降級(jí)澡匪。你可以把這個(gè)值設(shè)定為任何想設(shè)的值熔任,但是,你必須保證后續(xù)更新版的值要比這個(gè)大唁情。系統(tǒng)不會(huì)強(qiáng)制要求這一行為疑苔,但是隨著版本更新值也增加是正常的行為。一般來說甸鸟,你發(fā)布的第一版程序的versionCode設(shè)定為1惦费,然后每次發(fā)布都會(huì)相應(yīng)增加兵迅,不管發(fā)布的內(nèi)容是較大還是較小的

VersionName:展示給消費(fèi)者,消費(fèi)者會(huì)通過它認(rèn)知自己安裝的版本薪贫,下文提到的版本號(hào)都是說

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末恍箭,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子后雷,更是在濱河造成了極大的恐慌季惯,老刑警劉巖吠各,帶你破解...
    沈念sama閱讀 211,290評(píng)論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件臀突,死亡現(xiàn)場離奇詭異,居然都是意外死亡贾漏,警方通過查閱死者的電腦和手機(jī)候学,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,107評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來纵散,“玉大人梳码,你說我怎么就攤上這事∥橄疲” “怎么了掰茶?”我有些...
    開封第一講書人閱讀 156,872評(píng)論 0 347
  • 文/不壞的土叔 我叫張陵,是天一觀的道長蜜笤。 經(jīng)常有香客問我濒蒋,道長,這世上最難降的妖魔是什么把兔? 我笑而不...
    開封第一講書人閱讀 56,415評(píng)論 1 283
  • 正文 為了忘掉前任沪伙,我火速辦了婚禮,結(jié)果婚禮上县好,老公的妹妹穿的比我還像新娘围橡。我一直安慰自己,他們只是感情好缕贡,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,453評(píng)論 6 385
  • 文/花漫 我一把揭開白布翁授。 她就那樣靜靜地躺著,像睡著了一般晾咪。 火紅的嫁衣襯著肌膚如雪收擦。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,784評(píng)論 1 290
  • 那天禀酱,我揣著相機(jī)與錄音炬守,去河邊找鬼。 笑死剂跟,一個(gè)胖子當(dāng)著我的面吹牛减途,可吹牛的內(nèi)容都是我干的酣藻。 我是一名探鬼主播,決...
    沈念sama閱讀 38,927評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼鳍置,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼辽剧!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起税产,我...
    開封第一講書人閱讀 37,691評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤怕轿,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后辟拷,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體撞羽,經(jīng)...
    沈念sama閱讀 44,137評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,472評(píng)論 2 326
  • 正文 我和宋清朗相戀三年衫冻,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了诀紊。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,622評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡隅俘,死狀恐怖邻奠,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情为居,我是刑警寧澤碌宴,帶...
    沈念sama閱讀 34,289評(píng)論 4 329
  • 正文 年R本政府宣布,位于F島的核電站蒙畴,受9級(jí)特大地震影響贰镣,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜忍抽,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,887評(píng)論 3 312
  • 文/蒙蒙 一八孝、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧鸠项,春花似錦干跛、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至牧抽,卻和暖如春嘉熊,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背扬舒。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評(píng)論 1 265
  • 我被黑心中介騙來泰國打工阐肤, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,316評(píng)論 2 360
  • 正文 我出身青樓孕惜,卻偏偏與公主長得像愧薛,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子衫画,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,490評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容