我正在構建我的Xamarin.Android
項目,我選擇了AOT
彙編,這使我的.apk膨脹到165mb。我如何知道要選擇什麼樣的目標架構?
爲了讓我的apk文件大小下來我在看的目標架構,目前我的目標:
armeabi,armeabi-V7,X86,arm64-V8A
但我沒有了解這些架構如何與現代設備相對應。
我已閱讀Android CPU Architectures和它說:
Xamarin.Android默認爲armeabi-V7A的發佈版本。這 設置提供比armeabi更好的性能。如果您的 針對的是64位ARM平臺(如Nexus 9),請選擇 arm64-v8a。如果您要將應用程序部署到x86設備,請選擇x86。 如果目標x86設備使用64位CPU架構,請選擇 x86_64。
因此,我需要針對armeabi和armeabi-v7嗎?
我應該爲現代Android平板電腦和手機定位哪些構架?
我取決於你...說你排除86,那麼你的應用程序將不會顯示爲有基於英特爾芯片的設備(華碩,宏碁,惠普,聯想,戴爾等用戶。Android平板電腦使用Intel Atoms)。目前正在使用的ABI的設備編號分類是什麼? Google不會發布此統計信息,他們只會在其儀表板上發佈API級統計信息。我個人處理的大多數客戶都會爲每個ABI發佈不同的APK,因此每個APK對於Xamarin應用程序來說都是最小的。如果你正在手動完成這項工作,這會爲你的構建/發佈過程增加更多的工作.... – SushiHangover
....排除'arm64-v8a'和更新的Nexus將使用'armeabi-v7a',但運行速度會慢一點等。 ..爲單個App ID發佈單獨的APK:https://developer.android.com/google/play/publishing/multiple-apks.html – SushiHangover
@SushiHangover我在辦公室裏有一個Nexus 9,所以我會嘗試排除'arm64 -v8a'看看會發生什麼。我目前使用'VSTS'和[Google play extension](https://marketplace.visualstudio.com/items?itemName=ms-vsclient.google-play)發佈我的應用。我不認爲他們允許你爲不同的ABI上傳多個apk,這很煩人 – user1