הקטנת גודל ה-APKs של אפליקציית ML Kit ל-Android

לפני שמפרסמים בייצור אפליקציה שמשתמשת במודל של ML Kit במכשיר, כדאי לפעול לפי ההמלצות בדף הזה כדי להקטין את גודל ההורדה של האפליקציה.

איך יוצרים את האפליקציה כקובץ Android App Bundle

כדאי לבנות ולפרוס את האפליקציה כקובץ Android App Bundle כדי שמערכת Google Play תוכל ליצור באופן אוטומטי קובצי APK לדחיסויות מסך, לארכיטקטורות של מעבדים ולשפות ספציפיות. המשתמשים יצטרכו להוריד רק את קובצי ה-APK שתואמים להגדרת המכשיר שלהם, וחשוב מכך, הם יורידו רק את ספריות הקוד המקורי שתואמות לארכיטקטורת המכשיר שלהם.

מתקדם: העברת תכונות אופציונליות של ML למודולים של תכונות דינמיות

אם אתם משתמשים ב-ML Kit בתכונה של האפליקציה שלא משמשת למטרה העיקרית שלה, כדאי לשקול לבצע רפקטורינג באפליקציה כדי להעביר את התכונה הזו ואת התלות שלה ב-ML Kit אל מודול תכונות דינמי.

כדי שתכונות ML Kit יפעלו במודול תכונות לפי דרישה, צריך לכלול את התלות בספריית התמיכה בתכונות דינמיות של ML Kit playstore בקובץ build.gradle של קובץ ה-APK הבסיסי.

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

כך תמנעו ממשתמשים להוריד שלא לצורך את מודלי ה-ML של האפליקציה, שיכולים להיות גדולים.

מתקדם: החרגת קבצים בינאריים של ML Kit שלא נעשה בהם שימוש

‫ML Kit מבוסס על תמיכה בארכיטקטורות של 32 ביט ו-64 ביט. אם האפליקציה תומכת רק במצב 32 ביט – למשל, כי אתם משתמשים בספרייה שמספקת רק קבצים בינאריים של 32 ביט – אתם יכולים להחריג את הספריות של ML Kit שלא נעשה בהן שימוש מה-build:

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