缩减 Android 版机器学习套件 APK 的大小

在向生产环境中部署使用机器学习套件设备端模型的应用之前,请考虑按照此页面中的建议缩减应用的下载大小。

将应用构建为 Android App Bundle

将应用构建为 Android App Bundle 和部署,以便 Google Play 针对特定的屏幕密度、CPU 架构和语言自动生成 APK。用户只需下载与其设备配置匹配的 APK,最重要的是,用户只需下载与其设备架构匹配的原生代码库。

高级:将可选机器学习功能移至动态功能模块

如果您在应用的主要用途中使用机器学习套件,请考虑重构应用,将该功能及其机器学习套件依赖项移至动态功能模块

为了让机器学习套件功能在按需功能模块中正常运行,请在基本 apk 的 build.gradle 文件中添加机器学习套件 Play 商店动态功能支持库依赖项。

dependencies {
    // ...
    implementation 'com.google.mlkit:playstore-dynamic-feature-support:16.0.0-beta2'
}

这样做可以防止用户不必要地下载应用的机器学习模型(这种模型可能很大)。

高级:排除未使用的机器学习套件二进制文件

机器学习套件同时支持 32 位和 64 位架构。如果您的应用仅支持 32 位模式(例如,由于您使用的库只提供 32 位二进制文件),您可以从 build 中排除未使用的机器学习套件库:

android {
  defaultConfig {
      ndk {
          // Don't package arm64-v8a or x86_64
          abiFilters 'armeabi-v7a', 'x86'
      }
  }
}