看板 MobileComm 關於我們 聯絡資訊
算正常。 為何App更新耗時很久? 首先,原PO說的很久 是真的久 久得像手機秀逗了。遇見的人都會TMD幹,秒下的更新檔也能搞個過一分鐘。 不過這不是戲說台灣 也不是下列的安裝過程本身:- 5.0前的dalvik bytecode生成 耗時中等; 5.0+的ART native 原生碼 耗時長; 7.0的ART native+bytecode混合 耗時短。 只生成main()與核心部分,其餘部分靠記錄你使用頻率後充電時補上。 這款慢,究因是Google去年12月搞出來的File-by-File patching。 當初說只發給晚上睡覺充電中運行自動更新的手機。 但前幾個月就出現一些手機手動更新時,估計又在玩AB test。順道收集一些實際部署資料做analytics,若遇見它哪怕是Pixel也一樣喊倒霉。 Google從2012年起啟用打補丁方式節省APK更新的傳輸量, 簡單說就是拿一個app新版本與舊版本(你手機上的版本)比對並找出差異(delta),只傳輸給你差異部分,再由你手機上既有APK和新取得delta拼湊成新APK後安裝。 Google去年7月左右先推出相比下效率比之前使用的演算法更優秀47%的bsdiff。 12月進一步推出File-by-File patching。它的優點是平均能省上65趴左右的更新檔大小,有些範本更達到95趴。缺點是耗時耗運算。 下完後要先解壓手機上的既有APK(zip檔),再拿更新檔送來的bsdiff算出的個別文件delta針對有改動過的文件打補丁,壓縮回APK,再跑hash驗證。據Google說這過程[15年後手機]是以每秒1MB的速度在運行的。他們分析得出更新檔傳輸量減半,打補丁耗時則增一倍。 這就是更新檔下載完後為何會卡在100%許久的原因。其實你是被挑中的幸運兒,有幸參與實驗。 重點是每天能幫用戶省6 PetaBytes (也幫Google自己稍稍減負擔)。 畢竟要應付20億人數的Android每月活躍用戶, Google相簿每天新增12億張新照片。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.51.11.104 ※ 文章網址: https://www.ptt.cc/bbs/MobileComm/M.1496536659.A.920.html iem2000 : 專業推,我硬體的,軟體的不懂 ??? 06/04 08:40
jimei2 : 原來是這麼回事 比對下載合併而不是覆蓋安裝 慢正常 06/04 08:41
eric525498 : 趕快推 06/04 08:50
kcindy : 您太專業,黑特又少一個點攻擊了啦 06/04 08:52
darren9420 : 不推別人以為我看不懂 06/04 08:53
peter54047 : 專業推 06/04 09:02
m821014 : 趕....趕....快推 沒錯!!就是這樣!!! 06/04 09:11
bryant7912 : 先推 怕別人以為我看不懂 06/04 09:20
air1124 : 跟我要說的一樣...我在補充一點 06/04 09:25
air1124 : 手機要記得充電 06/04 09:25
WiNdexEX : 恩恩 我的答案跟小當家一樣 06/04 09:29
fr75520 : 專業。我記得新的演算法好像是實習生想的? 印象中 06/04 09:32
fr75520 : 有新聞 06/04 09:32
實習生是把brotli移植給商店用 這是傳輸時的壓縮像gzip 我在原帖原也誤判成它
henry770804 : 是內個吧...沒錯!!朗文大師太強了! 06/04 09:32
b23053812 : U文推推 06/04 09:34
mypigbaby : 推 專業,只是這種不講,會讓手機業者背黑鍋 06/04 09:37
s00126 : 太專業了吧!我用LOS14.1也覺得卡100%卡很久 也是因 06/04 09:44
s00126 : 為這個原因嗎 06/04 09:44
Morigan : 原文刪了? 06/04 09:45
這篇標題太長 我有拿掉原標題兩個字
rex1135 : 專業推!! 06/04 09:53
donnylee : 趕快推…不然別人會以為我不懂 06/04 10:01
Twinkle0414 : 推專業文 06/04 10:18
amilus8250 : 我是幸運兒 06/04 10:28
我也當過一陣子衰衰幸運兒 後來不知怎地不愛我了
peter120 : 推推 06/04 10:38
shi21 : 推推推 06/04 10:43
AFM : 我是原po,沒刪喔。另外感謝樓主釋疑~ 06/04 10:47
※ 編輯: mainline (60.51.11.104), 06/04/2017 10:48:38 ※ 編輯: mainline (60.51.11.104), 06/04/2017 10:50:07 ※ 編輯: mainline (60.51.11.104), 06/04/2017 10:52:46
AFM : 順便問一下,幸運中了怎麼辦?因為我是factory rese 06/04 10:54
AFM : t ... QQ 06/04 10:54
不曉得呢 認為值得試的只有清商店的資料 畢竟只考你耐性 不知道他們是怎麼隨機挑的 若記錄在伺服器認android id的話 無解
xiaojh : 什麼!你們都不懂呀! 06/04 10:54
v123958 : 推 06/04 10:56
james732 : 推,聽起來就是節省網路流量但多花時間了QQ 06/04 10:57
SilverFox : 推,學到新知了,想不到谷歌也在play節省流量了,以 06/04 10:58
SilverFox : 前就覺得差異性更新不錯,但很少看過實際上路 06/04 10:58
SilverFox : 不知道未來會不會提供選項,有的人要快,有的人要省 06/04 10:59
SilverFox : ,雖然以google角度,應該是一律都省流量才省。 06/04 10:59
※ 編輯: mainline (60.51.11.104), 06/04/2017 11:01:17
beshark : 這..... 有點專業 推了! 06/04 11:07
sokayha : 感謝資訊 06/04 11:13
sokayha : 猜應該不是認id 不然原po reset all就不會變回原速 06/04 11:16
sokayha : 了 06/04 11:16
同覺得不太可能認aid 沒必要搞那麼死 不過factory reset就會是新aid喔
ohmylove347 : 太專業啦,大推 06/04 11:25
※ 編輯: mainline (60.51.11.104), 06/04/2017 11:33:03
upu : 長知識推 06/04 11:35
sokayha : 原來如此 又學到一個 感謝XD 06/04 11:35
allen225 : 專業推。 06/04 11:37
RONC : 台灣一堆網路吃到飽被選重應該算衰吧 06/04 11:43
mmmbop : 嗯 跟我想的一樣 只是我懶的打 06/04 12:14
bcs : 所以是先上車後補票的概念。那去apkmirror安裝後goo 06/04 12:20
bcs : gle還會幫用戶補票嗎? 06/04 12:20
蛤 罰你重看
bcs : 也難怪google省不了電,背後總有服務來獲取用戶個資 06/04 12:23
bcs : XD 06/04 12:23
lantimes : 哇 內行的 在哪高就? 06/04 12:30
pd3mnd : 長知識! 06/04 12:44
molsmopuim : 推專業 06/04 13:01
※ 編輯: mainline (60.51.11.104), 06/04/2017 13:06:09
flash789 : 你這樣工讀生就少一個點可以黑HTC了啦,工讀生QQ 06/04 13:09
sokayha : 沒看樓上有人示範看不懂但就是要黑 06/04 13:10
kissa0924307: 這篇有沒有白話版本? 06/04 13:45
有種不人道但省流量的安裝方式被水鬼谷歌挑替身拿來做實驗
TIPPK : 簡單來說:你比較衰 就比較慢 06/04 13:47
sokayha : 「不要怕慢,它是為了幫你省網路流量,如果確定實裝 06/04 13:48
sokayha : 以後大家都會一樣慢」 06/04 13:48
※ 編輯: mainline (60.51.11.104), 06/04/2017 14:15:02
coolisme12 : 推專業 06/04 14:22
Tr3e : 有意思 06/04 15:16
Behave : 就是利用用戶手機來幫咕狗省流量省錢的好設計呢 06/04 17:03
cca1109 : 推 06/04 18:47
JeffreyCorn : 必須推不然別人以為我看不懂 06/04 23:33
notissue : 可不可以用比較簡單的方式講 因為我也有遇到這問題 06/05 23:08
notissue : 解決qq 06/05 23:09