本文通过对国内各大厂旗下知名的应用进行分析,大致统计分析各大厂在移动跨平台开发领域的接入情况,同时分析 Android 端应用的 arm 框架、 kotlin 和 androidx 的使用状态。

因为效(tou)率(lan)问题,这里只分析 Android 端,因为 Android 使用的情况下 iOS 基本也会接入对应的跨平台架构。

因为是个人统计,如有错误或遗漏还请指出。

1、微信(v7.0.15)

  • arm框架: arm64-v8a
  • 包含 kotlin、androidx
  • 跨平台框架:flutter,自定义的 skia

国内大厂在移动端跨平台的框架接入分析_微信

有趣的是,微信的 minSdkVersion 已经是 21 了。



<uses-sdk
android:minSdkVersion="21"
android:targetSdkVersion="28" />

2、腾讯课堂(v4.10.3.13)

  • arm框架: armeabi
  • kotlin 、androidx
  • 跨平台框架:react-native

国内大厂在移动端跨平台的框架接入分析_android_02

3、QQ(v8.3.6)

  • arm框架: armeabi
  • 跨平台框架:flutter
  • 分包数量高达 13 个 dex

国内大厂在移动端跨平台的框架接入分析_flutter_03

4、书旗(v11.1.3.111)

  • arm框架: armeabi
  • 跨平台框架:flutter、weex

国内大厂在移动端跨平台的框架接入分析_跨平台_04

5、京东(v9.0.0)

  • arm框架: armeabi-v7a
  • 跨平台框架:react-native

国内大厂在移动端跨平台的框架接入分析_微信_05

6、京喜(v3.6.0)

  • arm框架: armeabi
  • 跨平台框架:react-native

国内大厂在移动端跨平台的框架接入分析_跨平台_06

7、苏宁易购(v8.8.7)

  • arm框架: armeabi
  • 包含 kotlin 、andriodx
  • 跨平台框架:weex、react-native
  • 分包数量高达 15 个 dex

国内大厂在移动端跨平台的框架接入分析_flutter_07

8、微信读书(v4.6.0)

  • arm框架: armeabi-v7a
  • 包含 kotlin 、andriodx
  • 跨平台框架:react-native

国内大厂在移动端跨平台的框架接入分析_跨平台_08

9、京东金融(v5.4.30)

  • arm框架: armeabi-v7a
  • 包含 kotlin 、andriodx
  • 跨平台框架:react-native
  • 分包数量高达 11 个 dex

国内大厂在移动端跨平台的框架接入分析_跨平台_09

在京东看到阿里的开源项目,果然是代码无国界。

国内大厂在移动端跨平台的框架接入分析_微信_10

10、腾讯动漫(v8.4.7)

  • arm框架: armeabi
  • 包含 kotlin 、andriodx
  • 跨平台框架:weex

国内大厂在移动端跨平台的框架接入分析_flutter_11

11、哔哩哔哩(v6.1.0)

  • arm框架: armeabi
  • 包含 kotlin
  • 跨平台框架:flutter
  • 分包数量高达 14 个 dex

国内大厂在移动端跨平台的框架接入分析_ios_12

12、滴滴出行(v5.4.14)

  • arm框架: armeabi-v7a
  • 包含 kotlin、androidx
  • 跨平台框架:weex

国内大厂在移动端跨平台的框架接入分析_跨平台_13

13、哈罗出行(v5.40.0)

  • arm框架: armeabi-v7a
  • 包含 kotlin、androidx
  • 跨平台框架:flutter
  • 分包数量高达 14 个 dex

国内大厂在移动端跨平台的框架接入分析_微信_14

14、网易云音乐(v7.1.61)

  • arm框架: armeabi
  • 包含 kotlin、androidx
  • 跨平台框架:react-native

国内大厂在移动端跨平台的框架接入分析_微信_15

15、手机淘宝(v9.8.0)

  • arm框架: armeabi-v7a、armeabi-v8a
  • 包含 kotlin、androidx
  • 跨平台框架:flutter、weex
  • 分包数量高达 11 个 dex

国内大厂在移动端跨平台的框架接入分析_跨平台_16

16、闲鱼(v6.7.10)

  • arm框架: armeabi
  • 跨平台框架:flutter、weex
  • 分包数量高达 14 个 dex

国内大厂在移动端跨平台的框架接入分析_微信_17

17、支付宝(v10.1.95.9010)

  • arm框架: armeabi
  • 分包数量高达 12 个 dex

没发现 flutter 、weex 、react native,但是 hybird 模块不少。

国内大厂在移动端跨平台的框架接入分析_flutter_18

18、UC 浏览器(v13.0.0.1080)

  • arm框架: armeabi-v7a
  • 包含 kotlin
  • 跨平台框架:flutter、weex

国内大厂在移动端跨平台的框架接入分析_跨平台_13

19、饿了么(8.32.2)

  • arm框架: armeabi-v7a
  • 包含 kotlin
  • 跨平台框架:weex
  • 分包数量高达 14 个 dex

国内大厂在移动端跨平台的框架接入分析_android_20

20、钉钉(v5.1.5)

  • arm框架: armeabi
  • 包含 kotlin
  • 跨平台框架:weex
  • 分包数量高达 20 个 dex

国内大厂在移动端跨平台的框架接入分析_微信_21

21、飞猪(v9.5.2.104)

  • arm框架: armeabi-v7a
  • 包含 kotlin
  • 跨平台框架:weex、flutter
  • 分包数量高达 15 个 dex

国内大厂在移动端跨平台的框架接入分析_微信_22

22、菜鸟裹裹(v5.11.2)

  • arm框架: armeabi
  • 包含 kotlin
  • 跨平台框架:weex、react-native

国内大厂在移动端跨平台的框架接入分析_flutter_23

23、百度网盘(v10.1.23)

  • arm框架: armeabi-v7a
  • 包含 kotlin、androidx
  • 跨平台框架:flutter
  • 分包数量高达 15 个 dex

国内大厂在移动端跨平台的框架接入分析_flutter_24

24、百度(v11.23.5.10)

  • arm框架: armeabi
  • 包含 kotlin
  • 跨平台框架:react-native

国内大厂在移动端跨平台的框架接入分析_微信_25

25、美团(v10.10.201)

  • arm框架: armeabi
  • 跨平台框架:react-native

国内大厂在移动端跨平台的框架接入分析_android_26

26、美团外卖(v7.36.4)

  • arm框架: armeabi
  • 跨平台框架:react-native
  • 分包数量高达 11 个 dex

国内大厂在移动端跨平台的框架接入分析_微信_27

27、美团外卖商家版(v6.1.0.36)

  • arm框架: armeabi
  • 跨平台框架:flutter、react-native
  • 分包数量高达 11 个 dex

国内大厂在移动端跨平台的框架接入分析_跨平台_28

28、抖音(v11.2.0)

  • arm框架: armeabi-v7a
  • 包含 kotlin、androidx
  • 跨平台框架:react-native
  • 分包数量高达 10 个 dex

国内大厂在移动端跨平台的框架接入分析_flutter_29

抖音居然带有这个?

国内大厂在移动端跨平台的框架接入分析_跨平台_30

29、今日头条(v7.7.4)

  • arm框架: armeabi-v7a
  • 包含 kotlin

国内大厂在移动端跨平台的框架接入分析_android_31

30、知乎(v6.42.0)

  • arm框架: armeabi-v7a
  • 包含 kotlin、androidx

国内大厂在移动端跨平台的框架接入分析_微信_32

31、微博(v10.5.2)

  • arm框架: armeabi
  • 包含 kotlin、androidx

国内大厂在移动端跨平台的框架接入分析_android_33

32、WPS(v12.5)

  • arm框架: armeabi-v7a
  • 分包数量高达 17 个 dex

国内大厂在移动端跨平台的框架接入分析_跨平台_13

33、58 同城(v9.10.1)

  • arm框架: armeabi-v7a
  • 包含 kotlin、androidx
  • 跨平台框架:react-native
  • 分包数量高达 16 个 dex

国内大厂在移动端跨平台的框架接入分析_微信_35

34、携程(v8.24.2)

  • arm框架: arm64-v8a
  • 包含 kotlin、androidx
  • 跨平台框架:react-native

国内大厂在移动端跨平台的框架接入分析_flutter_36

35、去哪儿(v9.0.6)

  • arm框架: armeabi
  • 包含 kotlin、androidx
  • 跨平台框架:react-native

国内大厂在移动端跨平台的框架接入分析_跨平台_13

36、小红书 (v6.46.0)

  • arm框架: armeabi-v7a
  • 包含 kotlin、androidx
  • 跨平台框架:react-native

国内大厂在移动端跨平台的框架接入分析_微信_38

37、虎扑(v7.5.8.12113)

  • arm框架: armeabi、 armeabi-v7a
  • 包含 kotlin、androidx

国内大厂在移动端跨平台的框架接入分析_微信_39

38、虎嗅(v6.7.8)

  • arm框架: armeabi-v7a
  • 包含 androidx

国内大厂在移动端跨平台的框架接入分析_android_40

39、Boss直聘(v8.050)

  • arm框架: armeabi-v7a
  • 包含 kotlin、androidx

国内大厂在移动端跨平台的框架接入分析_微信_41

40、智联招聘(v7.9.56)

  • arm框架: armeabi-v7a
  • 跨平台框架:weex

国内大厂在移动端跨平台的框架接入分析_flutter_42

41、猿辅导(v7.7.1)

  • arm框架: armeabi
  • 包含 kotlin、androidx
  • 跨平台框架:flutter

国内大厂在移动端跨平台的框架接入分析_ios_43

42、学习强国(v2.13.1)

  • arm框架: armeabi
  • 包含 kotlin
  • 跨平台框架:flutter

国内大厂在移动端跨平台的框架接入分析_微信_44

43、得到(v8.0.1)

  • arm框架: armeabi-v7a
  • 包含 kotlin、androidx
  • 跨平台框架:react-native

国内大厂在移动端跨平台的框架接入分析_android_45

44、每日优鲜(v9.8.51)

  • arm框架: armeabi、armeabi-v7a
  • 包含 kotlin、androidx
  • 跨平台框架:flutter=

国内大厂在移动端跨平台的框架接入分析_跨平台_46

45、盒马(v4.43.0)

  • arm框架: armeabi-v7a
  • 跨平台框架:weex、flutter

国内大厂在移动端跨平台的框架接入分析_跨平台_47

46、小米有品(v5.6.88)

  • arm框架: armeabi-v7a
  • 包含 kotlin、androidx
  • 跨平台框架:weex、react-native

国内大厂在移动端跨平台的框架接入分析_android_48

47、米家(v5.6.88)

  • arm框架: armeabi-v7a、arm64-v8a
  • 包含 kotlin
  • 跨平台框架:weex、react-native、flutter

国内大厂在移动端跨平台的框架接入分析_android_49

48、链家(v9.15.1)

  • arm框架: armeabi
  • 包含 kotlin
  • 跨平台框架:flutter

国内大厂在移动端跨平台的框架接入分析_android_50

49、喜马拉雅(v6.6.75.3)

  • arm框架: armeabi
  • 包含 kotlin
  • 跨平台框架:react-native

国内大厂在移动端跨平台的框架接入分析_跨平台_51

50、同花顺(v10.08.03)

  • arm框架: armeabi
  • 包含 kotlin、androidx
  • 跨平台框架:flutter

国内大厂在移动端跨平台的框架接入分析_微信_52

51、陌陌(v8.24.3)

  • arm框架: armeabi
  • 包含 kotlin、androidx
  • 跨平台框架:weex
  • 分包数量高达 12 个 dex

国内大厂在移动端跨平台的框架接入分析_微信_53

52、脉脉(v5.2.66)

  • arm框架: armeabi-v7a
  • 包含 kotlin、androidx
  • 跨平台框架:react-native

国内大厂在移动端跨平台的框架接入分析_ios_54

可以看到,在上述 52 个样本中,得到了如下表格所示的数据,可以看到:

  • ​androidx​​​ 和 ​​kotlin​​ 的使用比例已经不低。
  • 基本上都是单种框架的比较多,其中使用 ​​arm64-v8a​​ 的比例还是很少,虽然 Google Play 有强制​​arm64-v8a​​ 的要求,但是国内的普及还是不高;​​armeabi​​ 和 ​​armeabi-v7a​​ 的比例还是旗鼓相当。
  • ​flutter​​​ 的使用比例明显上升不少,​​react-native​​ 还是使用最多的跨平台框架,​​weex​​ 意外的还有不低的比例。

类型

数量

kotlin

39

androidx

24

flutter

19

weex

17

react-native

22

arm64-v8a

3

armeabi-v7a

27

armeabi

26

最后,做这个统计分析有什么意义呢?其实太大的意义没有,只是今天看了一份 iOS 的统计分析所以有些好奇,不过也许当你需要向老板或者产品提供一些数据参考时,或者这份小数据会有一点参考意义。