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

在将使用机器学习套件设备端模型的应用部署到正式版之前,请考虑遵循本页中的建议来减小应用的下载大小。

以 Android App Bundle 格式构建应用

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

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

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

为了让 ML Kit 功能在按需功能模块中正常运行,请在基础 APK 的 build.gradle 文件中添加 ML Kit Play Store 动态功能支持库依赖项。

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'
      }
  }
}