ลดขนาด APK ของแอป ML Kit สำหรับ Android

ก่อนที่จะนำแอปที่ใช้โมเดล ML Kit ในอุปกรณ์ไปใช้งานจริง โปรดพิจารณาทำตามคำแนะนำในหน้านี้เพื่อลดขนาดการดาวน์โหลดของ แอป

สร้างแอปเป็น Android App Bundle

สร้างและติดตั้งใช้งานแอปเป็น Android App Bundle เพื่อให้ Google Play สร้าง APK สำหรับความหนาแน่นหน้าจอ สถาปัตยกรรม CPU และภาษาที่เฉพาะเจาะจงได้โดยอัตโนมัติ ผู้ใช้จะต้องดาวน์โหลดเฉพาะ APK ที่ ตรงกับการกำหนดค่าอุปกรณ์ และที่สำคัญที่สุดคือผู้ใช้จะดาวน์โหลดเฉพาะ ไลบรารีโค้ดแบบเนทีฟที่ตรงกับสถาปัตยกรรมของอุปกรณ์เท่านั้น

ขั้นสูง: ย้ายฟีเจอร์ ML ที่ไม่บังคับไปยังโมดูลฟีเจอร์แบบไดนามิก

หากคุณใช้ ML Kit ในฟีเจอร์ของแอปที่ไม่ใช่จุดประสงค์หลัก ให้พิจารณาปรับโครงสร้างแอปเพื่อย้ายฟีเจอร์นั้นและ การอ้างอิง ML Kit ไปยังโมดูลฟีเจอร์แบบไดนามิก

หากต้องการให้ฟีเจอร์ ML Kit ทำงานในโมดูลฟีเจอร์แบบออนดีมานด์ ให้ใส่ทรัพยากร Dependency ของไลบรารีการรองรับฟีเจอร์แบบไดนามิกของ 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 ที่ไม่ได้ใช้จากการสร้างได้โดยทำดังนี้

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