کاهش اندازه فایل‌های APK برنامه Android کیت یادگیری ماشین

قبل‌از اینکه برنامه‌ای را که از مدل درون‌دستگاهی «کیت یادگیری ماشین» استفاده می‌کند در محیط تولید مستقر کنید، توصیه‌های این صفحه را برای کاهش حجم بارگیری برنامه‌تان دنبال کنید.

برنامه‌تان را به‌عنوان «بسته ترکیبی برنامه Android» بسازید

برنامه‌تان را به‌عنوان Android App Bundle بسازید و مستقر کنید تا Google Play بتواند به‌طور خودکار APKهایی برای تراکم‌های صفحه‌نمایش، معماری‌های CPU، و زبان‌های خاص تولید کند. کاربران فقط باید فایل‌های APK را بارگیری کنند که با پیکربندی دستگاهشان مطابقت دارد و مهم‌تر از همه، کاربران فقط کتابخانه‌های کد بومی را بارگیری می‌کنند که با معماری دستگاهشان مطابقت دارد.

پیشرفته: انتقال ویژگی‌های اختیاری یادگیری ماشین به واحدهای ویژگی پویا

اگر از ML Kit در ویژگی‌ای از برنامه‌تان استفاده می‌کنید که هدف اصلی آن نیست، برنامه‌تان را بازسازی کنید تا آن ویژگی و وابستگی‌های ML Kit آن را به واحد ویژگی پویا منتقل کنید.

برای اینکه ویژگی‌های ML Kit در واحد ویژگی درخواستی کار کند، در فایل build.gradle فایل apk پایه، وابستگی کتابخانه پشتیبانی ویژگی پویا ML Kit playstore را اضافه کنید.

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

با انجام این کار، از بارگیری غیرضروری مدل‌های یادگیری ماشین برنامه‌تان توسط کاربران جلوگیری می‌کنید، که می‌تواند بزرگ باشد.

پیشرفته: حذف کردن دودویی‌های ML Kit استفاده‌نشده

ML Kit با پشتیبانی از معماری‌های ۳۲ بیتی و ۶۴ بیتی ساخته شده است. اگر برنامه‌تان فقط از حالت ۳۲ بیتی پشتیبانی می‌کند—برای مثال، چون از کتابخانه‌ای استفاده می‌کنید که فقط دودویی‌های ۳۲ بیتی ارائه می‌دهد—می‌توانید کتابخانه‌های ML Kit استفاده‌نشده را از ساختتان حذف کنید:

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