Android 中的7种CPU详解

2019-03-20  本文已影响0人  周蛋蛋

CPU历史详解

早起Android只支持ARMv5的CPU架构,而发展到现在,支持以下7种架构:

现在Android CPU绝大多数已ARM架构为主,少数用Intel的X86架构
以CPU的品牌来说,有 高通【骁龙】、联发科MTK【Helio】、三星【Exynos】、华为海思【Kirin】,其中三星和华为的芯片供自家用不外售。

Android中设备加载so策略

如何适配

目前主流的Android设备主要是 armeabi-v7a 架构的,然后是 x86 和 armeabi 了。如果同时包含了 armeabi, armeabi-v7a和x86,所有设备都可以运行,程序在运行的时候去加载不同平台对应的so,这是较为完美的一种解决方案,但是有时候为了减少apk的大小,不会同时设置 armeabi, armeabi-v7a 和 x86。根据不同的情况,可以进行不同的适配,
1.只适配 armeabi-v7a,因为目前主流机型是 ARMv7,并且 ARMv8 设备也向下兼容了armeabi-v7a,
Facebook、WhatsApp、王者荣耀等就是只适配了armeabi-v7a。(Google play store下载 Native libs Monitor 进行查看)。
2.只适配 armeabi,因为 ARMv7 、ARMv8 还是 x86 都兼容 armeabi,但是性能都会有些损耗,例如ARMv7 支持硬件浮点运算等没法体现,x86 支持 armeabi 同样具有相应的损耗。微信使用了此策略。
3.同时适配 armeabi-v7a 和 armeabi,既能够支持所有 ARM 架构,同时又能具有 ARMv7 支持硬件浮点运算等特性,例如Line等应用。
4.同时适配 x86 和 armeabi,既能支持所有 ARM 架构,又能支持x86架构,唯一的缺点就是没有了ARMv7 支持硬件浮点运算等一系列特性,例如QQ.
5.同时适配 armeabi, armeabi-v7a 和 x86,在性能方面来说是较为完美的方案,只是APK的大小也会随之的变大。

附:各CPU架构简介

Android 中配置


    sourceSets {
        main {
            jniLibs.srcDirs = ['libs']
        }
    }
    implementation fileTree(include: ['*.jar'], dir: 'libs')
上一篇 下一篇

猜你喜欢

热点阅读