ऐप्लिकेशन के लिए ChromeOS डिवाइस पर सहायता

Google Play Store का इस्तेमाल करके, Google के कई डिवाइसों पर Android ऐप्लिकेशन इंस्टॉल किए जा सकते हैं Chromebook. यह दस्तावेज़ Chromebook, Chromebox, और ऐसे Chromebase जिन पर आप Android ऐप्लिकेशन इंस्टॉल कर सकते हैं.

खास जानकारी

ज़्यादातर Android फ़ोन में ARM चिपसेट होते हैं. हालांकि, कई ChromeOS डिवाइस में x86 चिप का इस्तेमाल किया जाता है. Kotlin या Java में लिखे गए बेसिक ऐप्लिकेशन के लिए, यह अंतर अहम नहीं है. हालांकि, नेटिव कोड में लिखे गए ऐप्लिकेशन के लिए, जिनमें गेम की मदद से बनाए गए ऐप्लिकेशन भी शामिल हैं तो डिवाइस में मौजूद चिपसेट की वजह से आपको परेशानी हो सकती है.

आम तौर पर, नेटिव कोड वाले सभी ऐप्लिकेशन और गेम, सभी चार मुख्य Android डिवाइसों पर शिप किए जाते हैं एबीआई (ऐप्लिकेशन बाइनरी इंटरफ़ेस): Armeabi-v7a (arm32), arm64-v8a (arm64), x86 (x86_32), और x86_64. इससे ऐप्लिकेशन की परफ़ॉर्मेंस सबसे अच्छी रहती है साथ ही, यह हर डिवाइस में सबसे कम बैटरी खर्च करता है. उदाहरण के लिए, cमेक-आधारित build.gradle फ़ाइल में ये शामिल हो सकते हैं:

ग्रूवी

externalNativeBuild {
    cmake {
        abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64'
    }
}

Kotlin

externalNativeBuild {
    cmake {
        abiFilters("armeabi-v7a", "arm64-v8a", "x86", "x86_64")
    }
}

Android पैकेज किट (APK) का साइज़

मोनोलिथिक APK में हर एबीआई अपना साइज़ बड़ा करता है. इसका असर पड़ सकता है आपके उपयोगकर्ताओं का डिस्क इस्तेमाल, ऐप्लिकेशन का डाउनलोड साइज़, और ऐप्लिकेशन पर इसका असर पड़ा है या नहीं Play Store के साइज़ की सीमाओं के हिसाब से. इससे बचने का सबसे अच्छा तरीका है कि Android ऐप्लिकेशन बंडल.

ऐप्लिकेशन बंडल की मदद से, Android Studio में मौजूद सभी चार एबीआई को आसानी से बंडल किया जा सकता है. इसके लिए, डाउनलोड साइज़. इनकी मदद से, डाइनैमिक डिलीवरी का फ़ायदा भी आसानी से लिया जा सकता है, उपयोगकर्ताओं को अनुरोध किए जाने पर ही, गेम का बड़ा कॉन्टेंट डाउनलोड करने की अनुमति दें. अगर ऐप्लिकेशन बंडल की उपलब्धता न हो पुराने multi-APK का इस्तेमाल करें, एक जैसा व्यवहार.

32-बिट और 64-बिट बिल्ड

सभी Android ऐप्लिकेशन के लिए, 64-बिट वाला बिल्ड वर्शन उपलब्ध कराना ज़रूरी है. ARM और Android, दोनों के लिए 32-बिट बिल्ड ज़रूरी नहीं है x86 डिवाइस. Android 64-बिट की जानकारी देखें ज़्यादा जानकारी के लिए दस्तावेज़⁠.

सिर्फ़ 64-बिट बिल्ड उपलब्ध कराने से बिल्ड टारगेट की ज़रूरत कम हो जाती है और आपके की जांच की है, तो इससे आपका गेम चलाने वाले डिवाइस के प्रकार भी सीमित हो जाते हैं. इसके लिए उदाहरण के लिए, हार्डवेयर की अन्य सीमाओं की वजह से, कई पुराने Chromebook सिर्फ़ 32-बिट Android पर चलते हैं भले ही, उनमें 64-बिट वाला सीपीयू क्यों न हो. इन डिवाइसों पर अपना ऐप्लिकेशन चलाया जा सके, इसके लिए ज़रूरी है कि 32 और 64-बिट दोनों की सुविधा देता है.

ARM अनुवाद

x86 Chromebook जब भी मुमकिन हो, ARM कोड का अनुवाद करने की कोशिश करते हैं, लेकिन अनुवाद करने से प्रदर्शन धीमा हो जाता है और बैटरी का उपयोग बढ़ जाता है. सबसे अच्छे उपयोगकर्ता के लिए और x86 बिल्ड उपलब्ध कराएं. अगर ऐसा नहीं किया जा सकता है, तो आर्म32 और आर्म64 एबीआई, दोनों को कुछ x86 Chromebook पर भी काम करता है, क्योंकि हो सकता है कि कुछ x86 Chromebook से आर्म64 कोड का अनुवाद न हो.

हालांकि, आर्म32 ट्रांसलेशन की सुविधा सभी Android डिवाइसों पर उपलब्ध है, लेकिन यह सुविधा सभी Chromebook पर उपलब्ध नहीं है आर्म64 कोड का अनुवाद कर सकते हैं. इसका मतलब है कि अगर आपके गेम में सिर्फ़ आर्म64 बिल्ड टारगेट है, यह सुविधा कई ChromeOS डिवाइसों के लिए उपलब्ध नहीं है. अगर आप शिपिंग नहीं कर पा रहे हैं x86 बाइनरी, आपके बिल्ड में Arm32 और आर्म64 एबीआई, दोनों शामिल होते हैं.

शामिल एबीआई ChromeOS के साथ काम करता है
आर्म64 खराब
आर्म32 और आर्म64 ठीक है (अनुवाद के साथ)
आर्म32, arm64, x86_32, और x86_64 सर्वश्रेष्ठ