ลดขนาด APK ของแอป ML Kit สำหรับ Android
จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน
บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ
ก่อนติดตั้งใช้งานแอปที่ใช้โมเดลบนอุปกรณ์ ML Kit เป็นเวอร์ชันที่ใช้งานจริง
ลองทำตามคำแนะนำบนหน้านี้ เพื่อลดขนาดการดาวน์โหลด
แอป
สร้างแอปเป็น Android App Bundle
สร้างและทำให้แอปใช้งานได้เป็น Android App Bundle เพื่อให้ Google
Play สามารถสร้าง APK สำหรับความหนาแน่นของหน้าจอและ CPU ที่เฉพาะเจาะจงได้โดยอัตโนมัติ
สถาปัตยกรรม และภาษา ผู้ใช้จะต้องดาวน์โหลด APK ที่
ตรงกับการกำหนดค่าอุปกรณ์ และที่สำคัญที่สุด ผู้ใช้จะดาวน์โหลดเฉพาะ
ไลบรารีโค้ดแบบเนทีฟที่ตรงกับสถาปัตยกรรมของอุปกรณ์
ขั้นสูง: ย้ายฟีเจอร์ ML ที่ไม่บังคับไปยังโมดูลฟีเจอร์แบบไดนามิก
หากคุณใช้ ML Kit ในฟีเจอร์ของแอปที่ไม่ใช่วัตถุประสงค์หลัก
ลองเปลี่ยนโครงสร้างภายในโค้ดแอปเพื่อย้ายฟีเจอร์และ ML Kit
ทรัพยากร Dependency กับโมดูลฟีเจอร์แบบไดนามิก
เพื่อให้ฟีเจอร์ ML Kit ทำงานในโมดูลฟีเจอร์แบบออนดีมานด์ในไฟล์ build.gradle
ของ APK พื้นฐานได้
ซึ่งรวมถึงทรัพยากร Dependency ของไลบรารีการสนับสนุนฟีเจอร์แบบไดนามิกของ ML Kit ของ Play Store
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'
}
}
}
เนื้อหาของหน้าเว็บนี้ได้รับอนุญาตภายใต้ใบอนุญาตที่ต้องระบุที่มาของครีเอทีฟคอมมอนส์ 4.0 และตัวอย่างโค้ดได้รับอนุญาตภายใต้ใบอนุญาต Apache 2.0 เว้นแต่จะระบุไว้เป็นอย่างอื่น โปรดดูรายละเอียดที่นโยบายเว็บไซต์ Google Developers Java เป็นเครื่องหมายการค้าจดทะเบียนของ Oracle และ/หรือบริษัทในเครือ
อัปเดตล่าสุด 2024-09-20 UTC
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"ไม่มีข้อมูลที่ฉันต้องการ"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"ซับซ้อนเกินไป/มีหลายขั้นตอนมากเกินไป"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"ล้าสมัย"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"ปัญหาเกี่ยวกับการแปล"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"ตัวอย่าง/ปัญหาเกี่ยวกับโค้ด"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"อื่นๆ"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"เข้าใจง่าย"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"แก้ปัญหาของฉันได้"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"อื่นๆ"
}]
{"lastModified": "\u0e2d\u0e31\u0e1b\u0e40\u0e14\u0e15\u0e25\u0e48\u0e32\u0e2a\u0e38\u0e14 2024-09-20 UTC"}
[[["เข้าใจง่าย","easyToUnderstand","thumb-up"],["แก้ปัญหาของฉันได้","solvedMyProblem","thumb-up"],["อื่นๆ","otherUp","thumb-up"]],[["ไม่มีข้อมูลที่ฉันต้องการ","missingTheInformationINeed","thumb-down"],["ซับซ้อนเกินไป/มีหลายขั้นตอนมากเกินไป","tooComplicatedTooManySteps","thumb-down"],["ล้าสมัย","outOfDate","thumb-down"],["ปัญหาเกี่ยวกับการแปล","translationIssue","thumb-down"],["ตัวอย่าง/ปัญหาเกี่ยวกับโค้ด","samplesCodeIssue","thumb-down"],["อื่นๆ","otherDown","thumb-down"]],["อัปเดตล่าสุด 2024-09-20 UTC"]]