<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>

          來了!Android應用市場64位應用策略

          共 2926字,需瀏覽 6分鐘

           ·

          2022-02-12 20:06

          上一篇:100多個免費常用API接口分享,調(diào)用完全不限次數(shù),以后總用得著!

          作者:熊熊君fly 鏈接:https://juejin.cn/post/7023286220662767624

          1 、背景

          2019年8月1號,在Google Play上發(fā)布應用必須支持64位架構,緊接著 小米應用商店、OPPO應用商店、vivo應用商店、騰訊應用寶和百度手機助手等五大應用商店宣布,為更好提升App性能體驗并降低功耗,五方將共同推進國內(nèi)安卓生態(tài)對64位架構的升級支持。

          具體的時間表:

          大勢所趨,以后發(fā)布的應用要支持64位系統(tǒng),

          2、調(diào)研

          現(xiàn)狀
          目前手機cpu架構是armeabiarmeabi-v7a、arm64-v8a、x86、x86_64,但是目前手機基本上都是arm架構,x86架構的手機基本上沒有,基本上是平板,可以忽略。
          armeabi是十年前的手機CPU架構,基本上沒有了。
          armeabi-v7a的CPU架構是32位。
          Arm64-v8a的CPU架構是64位。
          所以目前需要考慮的armeabi-v7a、arm64-v8a這兩款就可以了, 之前開發(fā)者在打包的時候,為了包大小的考慮,常常指定打包的時候,只指定armeabi-v7a架構的so包,這樣包大小可以小很多,尤其是so庫多的應用
          ndk {
              // 選擇要添加的對應 cpu 類型的 .so 庫,多個abi以“,”分隔。
              abiFilters 'armeabi-v7a'
              // 可指定的值為 'armeabi-v7a''arm64-v8a''armeabi''x86''x86_64',
          }
          在項目的gradle中配置ndk就可以,64位的手機會自適應32位的應用,這樣可以完美的兼容市面上99.9%的手機,這樣包大小也會小很多 但是這樣64位處理器的性能就無法完美的發(fā)揮出來,那么應用64位有哪些好處呢?
          由于一些軟件功能越來越多,安裝包的體積、運行時需要消耗的運行內(nèi)存越來越大,32位應用的局限性越來越突出。而64位系統(tǒng),可以在單個線程里使用超過4GB的運行內(nèi)存,當處理一些大型軟件、或者進行高像素圖像、視頻處理的時候,就更能夠發(fā)揮手機硬件的優(yōu)勢。比如一些大型游戲、網(wǎng)絡視頻直播、高畫質(zhì)影音播放等等。而且64位系統(tǒng)相比32位系統(tǒng),會帶來至少20%以上效率的提升。
          打入64位的so包必然導致包大小增大很多,導致用戶下載體驗差,目前Google paly支持上傳32位和64位的兩個apk,這樣用戶可以根據(jù)手機cpu架構動態(tài)的下載那個apk
          國內(nèi)市場暫不支持,但是這個是趨勢,之后必然要上這個功能的,我們在開發(fā)的時候,暫時還需要支持'armeabi-v7a', 'arm64-v8a’兩個架構,包大小也會增大很多

          3、 處理方案

          小米應用商店支持64位架構適配指南: https://dev.mi.com/distribute/doc/details?pId=1244

          vivo應用商店64位架構適配指南: https://dev.vivo.com.cn/documentCenter/doc/511

          oppo應用商店64位架構適配指南: https://open.oppomobile.com/wiki/doc#id=10948

          若要確定應用是否包含 64 位庫,最簡單的方法就是檢查 APK 文件的結構。在構建時,APK 會與應用所需的所有原生庫打包在一起。原生庫會根據(jù) ABI 存儲在不同的文件夾中。您的應用不一定要支持所有 64 位架構,但對于支持的每種原生 32 位架構,應用都必須包含相應的 64 位架構。對于 ARM 架構,32 位庫位于 armeabi-v7a 中。對應的 64 位庫則位于 arm64-v8a 中。

          對于 x86 架構,32位庫位于 x86中,64 位庫則位于 x86_64 中。

          那么如何查看apk的架構

          點擊打出來的apk包,就會出現(xiàn)在目前的apk架構

          build.gradle中把ndk的依賴修改,依賴'armeabi-v7a', 'arm64-v8a'

          ndk {
                      // 選擇要添加的對應 cpu 類型的 .so 庫,多個abi以“,”分隔。
                      abiFilters 'armeabi-v7a''arm64-v8a'
                      // 可指定的值為 'armeabi-v7a''arm64-v8a''armeabi''x86''x86_64',
                  }
          打出的包的結果

          打出的包需要在64位測試機上測試,如何查看自己的的android手機的CPU架構呢?

          查看Android設備的CPU架構信息,可以使用命令來完成:

          CPU architecture:7表示arm-v78表示arm-v8
          AArch64是ARMv8 架構的一種執(zhí)行狀態(tài)。

          相關閱讀:2T架構師學習資料干貨分享


          1、2T架構師學習資料干貨分享

          2、985副教授工資曝光

          3、心態(tài)崩了!稅前2萬4,到手1萬4,年終獎扣稅方式1月1日起施行~

          4、雷軍做程序員時寫的博客,很強大!

          5、人臉識別的時候,一定要穿上衣服啊!

          6、清華大學:2021 元宇宙研究報告!

          7、績效被打3.25B,員工將支付寶告上了法院,判了

          瀏覽 203
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <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>
                  色老板免费精品无码免费视频 | 毛片AV网址| 青草网| 伊人高清在线 | 色五月在线 |