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

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

פיתוח האפליקציה כקובץ Android App Bundle

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

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

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

כדי שתכונות ML Kit יפעלו במודול תכונות על פי דרישה, צריך לכלול את התלות בספריית התמיכה בתכונות הדינמיות של ML Kit ב-Play Store בקובץ 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 ביט – תוכלו להחריג מה-build את ספריות ML Kit שלא בשימוש:

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