أداء إصدار Android

تتضمن هذه الصفحة معلومات حول تحسين أداء الإصدار لتطبيقات Android على وجه التحديد. للحصول على تحسين أداء الإصدار العام باستخدام Bazel، يمكنك الاطّلاع على تحسين الأداء.

توجد العلامات في بنية ضبط bazelrc، لذا يمكن لصقها مباشرة في ملف bazelrc واستدعاؤها باستخدام --config=<configuration_name> على سطر الأوامر.

أداء تحليل الملفات

يكتب بازيل ملفًا شخصيًا لتتبّع JSON تلقائيًا إلى ملف باسم command.profile.gz في قاعدة إخراج Bazel. يمكنك الاطّلاع على مستندات ملف JSON الشخصي للتعرُّف على كيفية قراءة الملف التجاري والتفاعل معه.

العمّال الدائمون للإصدارات التي تعمل بنظام التشغيل Android.

لدى مجموعة فرعية من إجراءات إصدار Android دعم للعاملين الدائمين.

هذه الاختصارات هي:

  • ديكستر
  • جافا
  • سكر
  • AaptPackage
  • تحليل موارد Android
  • مورد مورد Android
  • مزوّد موارد Android
  • RClassGenerator
  • رابط Android Android
  • نظام التشغيل AndroidAa2
  • AndroidAssetMerger
  • دمج AndroidResource
  • دمج AndroidAndroid

يمكن أن يؤدي تمكين الموظفين إلى تحسين الأداء من خلال توفير تكاليف بدء تشغيل JVM من خلال استدعاء كل من هذه الأدوات، ولكن على حساب زيادة استخدام الذاكرة على النظام من خلال الاستمرار في استخدامها.

لتمكين العاملين في هذه الإجراءات، يمكنك وضع العلامات التالية على --config=android_workers في سطر الأوامر:

build:android_workers --strategy=DexBuilder=worker
build:android_workers --strategy=Javac=worker
build:android_workers --strategy=Desugar=worker

# A wrapper flag for these resource processing actions:
# - AndroidResourceParser
# - AndroidResourceValidator
# - AndroidResourceCompiler
# - RClassGenerator
# - AndroidResourceLink
# - AndroidAapt2
# - AndroidAssetMerger
# - AndroidResourceMerger
# - AndroidCompiledResourceMerger
build:android_workers --persistent_android_resource_processor

العدد التلقائي للعاملين الدائمين الذين تم إنشاؤهم لكل إجراء هو 4. لقد قيّمنا أداء الإصدار المحسّن من خلال تقييد عدد مرات تكرار كل إجراء بـ 1 أو 2، على الرغم من أن هذا قد يختلف بناءً على النظام. يعمل بازل، والمشروع قيد الإنشاء.

للحد من عدد مرات تكرار الإجراء، يمكنك تطبيق العلامات التالية:

build:android_workers --worker_max_instances=DexBuilder=2
build:android_workers --worker_max_instances=Javac=2
build:android_workers --worker_max_instances=Desugar=2
build:android_workers --worker_max_instances=AaptPackage=2
# .. and so on for each action you're interested in.

استخدام أداة AAPT2

تم تحسين أداء aapt2 خلال aapt وإنشاء ملفات APK أصغر حجمًا. لاستخدام aapt2، يمكنك استخدام العلامة --android_aapt=aapt2 أو ضبط العلامة aapt2 على aapt_version في android_binary وandroid_local_test.

تحسينات محرك الأقراص ذو الحالة الصلبة

تُعدّ العلامة --experimental_multi_threaded_digest مفيدة لتحسين عملية احتساب الملخّص على محركات أقراص SSD.