Android बिल्ड परफ़ॉर्मेंस

अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है किसी समस्या की शिकायत करें सोर्स देखें रात · 7.3 · 7.2 · 7.1 · 7.0 · 6.5

इस पेज पर, Android के लिए बिल्ड की परफ़ॉर्मेंस को ऑप्टिमाइज़ करने की जानकारी दी गई है ऐप्लिकेशन को खास तौर पर डाउनलोड किया जा सकता है. Baज़ल के साथ, बिल्ड की परफ़ॉर्मेंस को बेहतर बनाने के बारे में जानने के लिए, देखें परफ़ॉर्मेंस ऑप्टिमाइज़ करना.

झंडे bazelrc कॉन्फ़िगरेशन सिंटैक्स, इसलिए उन्हें सीधे किसी bazelrc फ़ाइल में चिपकाया जा सकता है और --config=<configuration_name>.

परफ़ॉर्मेंस बेहतर करना

Bazz, डिफ़ॉल्ट रूप से बेज़ल के आउटपुट बेस में command.profile.gz. इसके लिए JSON प्रोफ़ाइल दस्तावेज़ देखें उस प्रोफ़ाइल को कैसे पढ़ें और उससे कैसे इंटरैक्ट करें.

Android बिल्ड ऐक्शन के लिए स्थायी वर्कर.

Android बिल्ड ऐक्शन के एक सबसेट में यह सुविधा काम करती है स्थायी कर्मचारी.

ये कार्रवाइयां' याद रखने के तरीके:

  • DexBuilder
  • जावैक
  • डिसुगर
  • AaptPackage
  • AndroidResourceParser
  • AndroidResourceValidator
  • AndroidResourceCompiler
  • RClassGenerator
  • AndroidResourceLink
  • AndroidAapt2
  • AndroidAssetMerger
  • AndroidResourceMerger
  • AndroidCompiledResourceMerger

कर्मचारियों को अनुमति देने से, वे जेवीएम पर बचत कर सकते हैं और बेहतर परफ़ॉर्म कर सकते हैं इनमें से प्रत्येक टूल को लागू करने से शुरू होने वाली स्टार्टअप लागत आती है, लेकिन मेमोरी के इस्तेमाल को जारी रखता है.

कर्मचारियों को इन कार्रवाइयों के लिए चालू करने के लिए, इन फ़्लैग को इसके साथ लागू करें --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 चालू करें या aapt_version पर aapt2 को फ़्लैग करें android_binary और android_local_test.

एसएसडी ऑप्टिमाइज़ेशन

--experimental_multi_threaded_digest फ़्लैग की मदद से, डाइजेस्ट को ऑप्टिमाइज़ किया जा सकता है एसएसडी पर कंप्यूटेशन वगैरह करते हैं.