<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          谷歌棄用 APK 格式!替代品 AAB 有何優(yōu)勢(shì)?

          共 2887字,需瀏覽 6分鐘

           ·

          2021-07-18 23:56

          相關(guān)閱讀:一個(gè)90后員工猝死的全過(guò)程

          Android 用戶(hù)想必對(duì) APK 并不陌生。APK 是 Android Package 的縮寫(xiě),即Android 安裝包,基于 ZIP 壓縮包格式,通過(guò)把 Android SDK 編譯工程打包成一個(gè) Android 系統(tǒng)支持的安裝程序文件,幾乎所有 Android 應(yīng)用程序都以這種格式發(fā)布。

          但自下個(gè)月起,APK 格式要被谷歌棄用了。

          近日,谷歌宣布:自 2021 年 8 月起,Google Play 將要求開(kāi)發(fā)者以 Android App Bundle (以下簡(jiǎn)稱(chēng) AAB)格式發(fā)布新應(yīng)用,該格式將取代 APK 作為標(biāo)準(zhǔn)發(fā)布格式

          1、為何要從 APK 轉(zhuǎn)變?yōu)?AAB?

          一直以來(lái),Android 首選的應(yīng)用程序包就是 APK,而一個(gè) APK 中往往包含應(yīng)用代碼、圖片、音頻和開(kāi)發(fā)者生成的應(yīng)用簽名密鑰等大量資源。

          不僅如此,由于 Android 設(shè)備規(guī)格各異,開(kāi)發(fā)人員還需根據(jù)設(shè)備的不同屏幕密度(320dpi、480dpi 等)、處理器(ARM、ARM64、x86)、用戶(hù)所在的不同地區(qū),在 Google Play 中構(gòu)建和上傳多個(gè) APK,以此才能在用戶(hù)點(diǎn)擊“安裝”時(shí),在其設(shè)備上安裝最適配的 APK。

          但在這種情況下,應(yīng)用開(kāi)發(fā)者便承受太多:不僅要開(kāi)發(fā)應(yīng)用,還要管理許多 APK 以支持大量設(shè)備。因此為了省時(shí)省力,大多數(shù)開(kāi)發(fā)者通常都會(huì)選擇構(gòu)建一個(gè)通用 APK,即包含語(yǔ)言包、代碼等在內(nèi)的所有資源。不論用戶(hù)身處何處、使用何種規(guī)格的設(shè)備,只需下載這個(gè)通用 APK 即可。

          說(shuō)到這里,你或許發(fā)現(xiàn)了問(wèn)題所在:包含所有資源的通用 APK 太大了。用戶(hù)分明只需其中與自己設(shè)備相適配的資源,卻要把整個(gè) APK 都下載下來(lái),不僅延長(zhǎng)了安裝時(shí)間,也占用了更多的帶寬。

          為了解決這個(gè)問(wèn)題,谷歌在 2018 年 Google I/O 大會(huì)上推出了 AAB 格式,希望以此減少開(kāi)發(fā)者的負(fù)擔(dān),同時(shí)也有助于減少應(yīng)用大小、安裝時(shí)間和帶寬消耗,提高用戶(hù)體驗(yàn)。

          簡(jiǎn)單來(lái)說(shuō),AAB 格式其實(shí)并不是一個(gè)全新的應(yīng)用安裝包,你可以將它當(dāng)做一個(gè)容器,里面包含著一個(gè)基本 APK 和多個(gè)用于特定配置的 APK

          而谷歌在這之中則充當(dāng)“篩選”的角色:一旦開(kāi)發(fā)者選擇使用 AAB 格式發(fā)布應(yīng)用,谷歌就會(huì)根據(jù)用戶(hù)的設(shè)備配置從中生成優(yōu)化后的 APK 提供給用戶(hù)。對(duì)用戶(hù)而言,這樣的 APK 體積小、安裝快,對(duì)開(kāi)發(fā)者來(lái)說(shuō)也省事:不必再為各種設(shè)備管理一大堆 APK。

          因此,總體來(lái)看,谷歌要求下個(gè)月以 AAB 格式發(fā)布新應(yīng)用的決定主要面向開(kāi)發(fā)者,對(duì)用戶(hù)而言影響不是太大,因?yàn)樽罱K在設(shè)備上安裝 Android 應(yīng)用的打包格式還是 APK

          2、AAB 的優(yōu)勢(shì)

          相較于 APK,AAB 自然有其獨(dú)一無(wú)二的優(yōu)點(diǎn)。

          首先便是上文所提到的應(yīng)用體積縮小。據(jù)谷歌官方介紹,使用 AAB 生成優(yōu)化的 APK 體積平均會(huì)比一般的 APK 小 15%,而這一數(shù)據(jù)會(huì)根據(jù)應(yīng)用大小有較大起伏。例如 Airbnb 在從 APK 切換到 AAB 格式后應(yīng)用大小減少了 22%,而 Netflix 更是減少了 57%。

          其次,AAB 的 Play Feature Delivery 功能可自定義將哪些功能模塊交付給哪個(gè)設(shè)備,支持安裝時(shí)交付、按條件交付和按需交付等三種模式。這也就是將應(yīng)用的功能拆分開(kāi)來(lái),以此大幅縮短用戶(hù)下載應(yīng)用的時(shí)間,其中沒(méi)用的功能用戶(hù)可以不下載或等到以后需要時(shí)再下載。

          還有一個(gè) Play Asset Delivery 功能,以動(dòng)態(tài)方式交付大型資源可以減少用戶(hù)等待時(shí)間,同時(shí)縮減交付成本。即使用 Play Asset Delivery 的游戲可通過(guò)紋理壓縮格式作為交付條件,以便用戶(hù)只獲取適合其設(shè)備的資源,避免浪費(fèi)空間或帶寬。

          3、對(duì)于 AAB 的擔(dān)憂

          雖然從結(jié)果看來(lái),以 AAB 格式分發(fā)新應(yīng)用對(duì)開(kāi)發(fā)者和用戶(hù)都有益處,但還是有部分人對(duì)此有些擔(dān)憂。

          有人擔(dān)心從 APK 變?yōu)?AAB 格式會(huì)太復(fù)雜。但谷歌表示:“對(duì)于大多數(shù)應(yīng)用而言,構(gòu)建 AAB 文件來(lái)替代 APK 文件僅需要少量工作。”它指出 App Bundle 是一種受主流構(gòu)建工具支持的開(kāi)源格式,因此在 Play Core 原生 SDK、Play Core Java SDK 和 Play Core Kotlin SDK 的助力下,無(wú)論用戶(hù)偏好哪種編碼環(huán)境,都可以輕松開(kāi)始使用可選的高級(jí) App Bundle 功能。此外,AAB 的要求僅適用于新應(yīng)用,現(xiàn)有應(yīng)用及面向特定 Google Play 用戶(hù)的私人應(yīng)用目前無(wú)需遵從此要求。

          有人對(duì)與谷歌共享私人簽名密鑰表示擔(dān)憂(簽名密鑰是驗(yàn)證 APK 完整性的重要信息,谷歌從 ABB 中生成優(yōu)化的 APK,因此簽名密鑰也將包含在 ABB 中),對(duì)此谷歌表示,所有“簽名密鑰都將存儲(chǔ)在谷歌用來(lái)存儲(chǔ)自己的密鑰的同一基礎(chǔ)設(shè)施上” ,因此開(kāi)發(fā)者的私人簽名密鑰都會(huì)受到嚴(yán)密的安全保護(hù)。

          還有人擔(dān)心因?yàn)?AAB 不能在 Google Play 以外的地方下載,會(huì)對(duì)如亞馬遜應(yīng)用商店等第三方應(yīng)用商店造成很大影響。但據(jù)了解谷歌已經(jīng)開(kāi)發(fā)了一個(gè)名為 bundletool 的開(kāi)源工具,允許開(kāi)發(fā)人員從 AAB 包中創(chuàng)建 APK,因此想在第三方商店中發(fā)布 Android 應(yīng)用程序的開(kāi)發(fā)人員可以手動(dòng)導(dǎo)出其應(yīng)用的 APK 版本。


          Android 應(yīng)用格式自 2008 年 Android 發(fā)布以來(lái)一直是 APK (Android PacKage)。

          它很容易創(chuàng)建,甚至微軟最近宣布的 Windows 11 也加入了對(duì) APK 的支持。

          但 Google 想要更好的控制 Android 應(yīng)用的發(fā)布,它宣布從 8 月開(kāi)始上傳到 Play Store 應(yīng)用商店的應(yīng)用必須使用 Android App Bundle(AAB) 格式。

          AAB 將取代 APK。

          Google 是在 2018 年推出 AAB 的,其背后動(dòng)機(jī)是 Android 支持的語(yǔ)言、CPU 架構(gòu)和屏幕分辨率越來(lái)越多,單一的版本太占空間,因此通過(guò)提供多個(gè) “APK”文件集合,由 Play Store 根據(jù)相應(yīng)的設(shè)備提供相應(yīng)的特定 APK。

          Google 稱(chēng)通過(guò)這種方法安裝的應(yīng)用大小能減少 15%。

          但從 APK 切換到 AAB,Google 能對(duì) Android 生態(tài)系統(tǒng)有更大的控制,因?yàn)?AAB 需要 Play Store 的云計(jì)算進(jìn)行處理,增加了第三方應(yīng)用商店的工作和困難。

          那么對(duì)于谷歌的這一決定,你有什么看法嗎?


          1、滴滴、滿(mǎn)幫、Boss直聘都被調(diào)查,為啥知乎美國(guó)上市沒(méi)被查?

          2、字節(jié)跳動(dòng)重大宣布:取消!員工炸了:直接降薪1

          3、再見(jiàn)了,Teamviewer!

          4、人臉識(shí)別的時(shí)候,一定要穿上衣服啊!

          5、程序員被公司辭退12天,前領(lǐng)導(dǎo)要求回公司講清楚代碼,結(jié)果懵了

          瀏覽 44
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  精品久久福利视频 | 日韩一区二区视频在线 | 欧美淫网激情 | 国产精品自拍偷拍 | 欧美高清 日韩 中文字幕 |