第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

面向 Flutter 開(kāi)發(fā)者的實(shí)用 CPU 架構(gòu)指南

在本指南中,我们不会深入硬件层面,只会提供每个移动开发者都应该了解的实际信息。

1. Android ABI

不同的Android设备具有不同的CPU,这些CPU支持不同的指令集。每个CPU及其指令集的组合都有自己的应用二进制接口(ABI)。NDK支持的ABI如下所示。

arm64-v8a:

arm64-v8a 架构常用于现代 Android 设备,因为它支持 64 位处理,这可以提升性能并允许更大的内存寻址。

大多数现代的Android智能手机都运行在arm64-v8a上。

armeabi-v7a
  • armeabi-v7a 架构指的是在许多 Android 设备中常用的一种 32 位 ARM 架构,尤其是中端、预算有限或较旧的旗舰机型。
  • 使用 armeabi-v7a 架构的设备通常配备有 Qualcomm 骁龙 400 系列、MediaTek MT65xx 系列和 Exynos 3 和 4 系列等处理器。

一些示例:

  • 三星 Galaxy A01, A02, A10, J7
  • 小米 Redmi 9A, 9C
  • LG G2, G3
x86_64

在Android中,x86_64 ABI指的是x86架构的64位版本,主要应用于Intel和AMD处理器。x86_64在桌面环境中用于Android模拟器时仍然相关,因为它与许多开发机器上的Intel和AMD处理器架构相匹配,从而加快了模拟速度。然而,如果你是在Apple Silicon机器上进行开发,使用arm64模拟器会更好。此外,基于Intel的Chromebook可以安装并运行编译为x86_64目标的Android应用。

x86

设备示例:

  • 联想 K900
  • 华硕 ZenFone 5 A500CG
  • 宏碁 Liquid C1

不被 Flutter 支持,也没有计划支持。强烈建议你在 Gradle 文件中排除这个 ABI,这样 Google Play 商店就不会允许运行在 32 位 x86 设备上的设备安装该应用。在你的 android/app/build.gradle 文件中添加以下内容:

    android {  
        ...  
        defaultConfig {   
            ...   
            ndk.abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86_64'  
        }  
    }

这样你也可以减小APK文件的大小,因为不必要的二进制文件不会被包含。然而,如果你已经上传了app bundle,那么这将不会对从Google Play商店安装应用的用户产生任何影响。他们安装的已经是针对其设备和设置进行了优化的版本。

此外,你还可以为每个ABI构建单独的APK。为此,运行 flutter build apk --split-per-abi 命令。这在某些测试场景中可能很有用,或者如果你在不支持应用包的商店发布应用(如F-Droid、Aptoide)。否则,通常使用应用包是更好的解决方案。

此外,Android NDK 过去支持诸如 ARMv5(armeabi)、32 位和 64 位 MIPS 等 ABI,但现在这些都已经废弃了。运行这些设备的系统现在大多只能在博物馆中找到(如 HTC Dream、LG Optimus GT540)。

2. iOS CPU 架构
  • arm64 是当前的 64 位 ARM CPU 架构,自 iPhone 5S 及以后的型号(如 6、6S、SE 和 7)以及 iPad Air、Air 2 和 Pro 等设备开始使用,这些设备使用 A7 及更新的芯片。也用于 Apple Silicon Mac 电脑和在这些电脑上运行的 iOS 模拟器。
  • x86_64(即 64 位 Intel)从 iOS 7.0 开始可选使用。当你在 Intel Mac 上运行 iOS 模拟器时,可能会遇到它。

Flutter 当前在 iOS 上仅编译为 arm64x86_64,因为 Apple 要求所有应用必须是 64 位的。您无需担心 32 位的支持。历史上曾存在一些其他架构:

  • armv7s 用于苹果的 A6 和 A6X 芯片,在 iPhone 5、iPhone 5C 和 iPad 4 上。
  • armv7 是一种较旧的 32 位 ARM CPU 变体,用于 A5 及更早版本。从 Flutter 2.10 版本 开始不再支持。
  • i386 是 iOS 6.1 及更低版本上的唯一选项。

你可以在XCode中配置目标架构。如果你使用的是Apple Silicon计算机,那么你只需要配置arm64架构。

你可以在构建设置 / 架构中找到这个选项

然而,如果你或你团队中的某人使用的是 Intel 机器,你可以添加 x86_64 架构。

确保在不需要某些架构的情况下将其排除,以确保构建时间和归档大小足够。例如,当使用Intel机器时,您可以排除iOS模拟器中的arm64架构。或者在Apple Silicon机器上,当某些插件不支持arm64时,也可以排除arm64架构。然后,应用程序将通过Rosetta运行。

希望这篇文章对你有所帮助。我会在找到更多有用信息时更新它。你可以关注我的Twitter以获取最新更新。

點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺(jué)得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開(kāi)微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消