تقليل حجم حِزم APK في تطبيق ML Kit لنظام التشغيل Android
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
قبل نشر تطبيق يستخدم نموذجًا على الجهاز من ML Kit في قناة الإصدار العلني،
ننصحك باتّباع النصائح الواردة في هذه الصفحة لتقليل حجم تنزيل
تطبيقك.
إنشاء تطبيقك كمجموعة حزمات تطبيق Android
أنشئ تطبيقك وطرِّحه كـ مجموعة حزمات تطبيق Android حتى يتمكّن Google
Play من إنشاء حِزم APK تلقائيًا لكثافات شاشة ومعماريات معالج ومقاييس أداء محددة ولغات معيّنة. لن يحتاج المستخدمون سوى إلى تنزيل حِزم APK التي تتوافق مع إعدادات أجهزتهم، والأهم من ذلك، لن يحتاجوا إلى تنزيل سوى مكتبات الرموز البرمجية الأصلية التي تتوافق مع بنية أجهزتهم.
ميزة متقدمة: نقل ميزات تعلُّم الآلة الاختيارية إلى وحدات العناصر الديناميكية
إذا كنت تستخدم ML Kit في ميزة من ميزات تطبيقك ليست الغرض الأساسي منها،
ننصحك بإعادة هندسة تطبيقك لنقل هذه الميزة ومكوّنات ML Kit
التابعة لها إلى وحدة ميزة ديناميكية.
لكي تعمل ميزات ML Kit في وحدة ميزة عند الطلب، يجب تضمين التبعية لـ "مكتبة دعم الميزات الديناميكية" من ML Kit في ملف build.gradle
لحزمة APK الأساسية.
dependencies {
// ...
implementation 'com.google.mlkit:playstore-dynamic-feature-support:16.0.0-beta2'
}
وبهذا الإجراء، تمنع المستخدمين من تنزيل نماذج الذكاء الاصطناعي في تطبيقك بدون داعٍ، والتي يمكن أن تكون
كبيرة.
خيارات متقدّمة: استبعاد ملفات ML Kit الثنائية غير المستخدَمة
تم تصميم "حزمة تعلُّم الآلة" بحيث تتوافق مع البنى الأساسية بإصدار 32 بت و64 بت. إذا كان
تطبيقك متوافقًا مع وضع 32 بت فقط، على سبيل المثال، لأنّك تستخدم مكتبة
لا توفّر سوى ملفات ثنائية 32 بت، يمكنك استبعاد مكتبات
ML Kit غير المستخدَمة من حِزمك:
android {
defaultConfig {
ndk {
// Don't package arm64-v8a or x86_64
abiFilters 'armeabi-v7a', 'x86'
}
}
}
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2025-05-14 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","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"]],["تاريخ التعديل الأخير: 2025-05-14 (حسب التوقيت العالمي المتفَّق عليه)"],[[["Reduce your app's download size by building it as an Android App Bundle, enabling Google Play to deliver optimized APKs to users based on their device configurations."],["For non-core ML features, leverage dynamic feature modules to deliver them on demand, minimizing the initial download size by excluding optional ML models."],["If your app only supports 32-bit mode, exclude unused 64-bit ML Kit libraries to further reduce the app's size."],["To enable ML Kit features in on-demand modules, include the `playstore-dynamic-feature-support` library in your base APK's dependencies."]]],[]]