ChromeOS के लिए ऐप्लिकेशन बनाना शुरू करें

Chromebook जैसे ChromeOS डिवाइस, Google Play Store और Android ऐप्लिकेशन. इस लेख में यह माना गया है कि आपके पास पहले से ऐसा Android ऐप्लिकेशन है जिसे जिन्हें Chromebook के लिए ऑप्टिमाइज़ करना है. बुनियादी बातें जानने में ऐप्लिकेशन बनाने के बारे में ज़्यादा जानने के लिए, अपना पहला Android बनाएं ऐप्लिकेशन है.

अपने ऐप्लिकेशन की मेनिफ़ेस्ट फ़ाइल अपडेट करें

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

ChromeOS के M53 वर्शन के बाद से, ऐसे सभी Android ऐप्लिकेशन जिन्हें खास तौर पर android.hardware.touchscreen यह सुविधा, ChromeOS डिवाइसों पर भी काम करती है. android.hardware.faketouch सुविधा. हालांकि, यह पक्का करने के लिए कि आपका ऐप्लिकेशन में अपडेट करें, तो अपनी मेनिफ़ेस्ट फ़ाइल अपडेट करें, ताकि android.hardware.touchscreen सुविधा की ज़रूरत नहीं है, जैसा कि नीचे दिया गया उदाहरण देखें.

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          ... >
    <!-- Some Chromebooks don't support touch. Although not essential,
         it's a good idea to explicitly include this declaration. -->
    <uses-feature android:name="android.hardware.touchscreen"
                  android:required="false" />
</manifest>

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

अगर आपको सेंसर की उपलब्धता पर ध्यान दिए बिना अपना ऐप्लिकेशन Chromebook पर चलाना है, अपनी मेनिफ़ेस्ट फ़ाइल को अपडेट करें, ताकि किसी सेंसर की ज़रूरत न पड़े.

सॉफ़्टवेयर की कुछ सुविधाएं, Chromebook पर काम नहीं करती हैं. उदाहरण के लिए, ऐसे ऐप्लिकेशन जो कस्टम IME, ऐप्लिकेशन विजेट, लाइव वॉलपेपर, और ऐप्लिकेशन लॉन्चर उपलब्ध न कराएं समर्थित है और उसे Chromebook पर इंस्टॉल नहीं किया जा सकता. इनकी पूरी सूची के लिए, सॉफ़्टवेयर की ये सुविधाएं, Chromebook पर काम नहीं करती हैं. ज़्यादा जानकारी के लिए, काम नहीं करने वाली जानकारी देखें सॉफ़्टवेयर की सुविधाएं.

टारगेट SDK टूल अपडेट करें

अपने ऐप्लिकेशन के targetSdkVersion को अपडेट करें एट्रिब्यूट की मदद से, एपीआई लेवल के सबसे नए वर्शन पर अपडेट करना Android प्लेटफ़ॉर्म में सुधार किए हैं. Android में किए गए सुधारों की समीक्षा करें अलग-अलग वर्शन प्लैटफ़ॉर्म पर उपलब्ध हैं.

नेटवर्किंग ज़रूरी शर्तों के बारे में जानें

Chromebook, Docker या LXC की तरह ही पूरे Android OS को कंटेनर में चलाता है. इसका मतलब है कि Android के पास सिस्टम के LAN का सीधा ऐक्सेस नहीं है इंटरफ़ेस पर कॉपी करने की सुविधा मिलती है. इसके बजाय, आईपीवी4 ट्रैफ़िक, नेटवर्क की एक अंदरूनी लेयर से होकर गुज़रता है पते का अनुवाद (NAT) और आईपीवी6 यूनिकास्ट ट्रैफ़िक एक हॉप.

किसी Android ऐप्लिकेशन से ज़्यादातर इंटरनेट पर आउटबाउंड यूनिकास्ट कनेक्शन उसी तरह काम करता है. आम तौर पर, इनबाउंड कनेक्शन ब्लॉक होते हैं. मल्टीकास्ट या ब्रॉडकास्ट Android के पैकेट, फ़ायरवॉल के ज़रिए LAN में नहीं भेजे जाते.

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

Android से शुरू होने वाले IPv4 कनेक्शन, ChromeOS होस्ट के IPv4 पते का इस्तेमाल करते हैं. अंदरूनी रूप से, Android ऐप्लिकेशन को नेटवर्क को असाइन किया गया एक निजी IPv4 पता दिखता है इंटरफ़ेस पर कॉपी करने की सुविधा मिलती है. Android से शुरू होने वाले IPv6 कनेक्शन किसी दूसरे पते का इस्तेमाल करते हैं ले जाया जा सकता है, क्योंकि Android कंटेनर में IPv6 पता.

क्लाउड और लोकल स्टोरेज का बेहतर तरीके से इस्तेमाल करें

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

इस सुविधा की वजह से, सिंक करने की सुविधा चालू करने के लिए अपने ऐप्लिकेशन के डेटा का क्लाउड पर बैक अप लें ट्रैक किया जा सकता है. हालांकि, आपको अपने ऐप्लिकेशन के लिए इंटरनेट कनेक्शन पर निर्भर न रहें, ताकि आप सामान्य तरीके से काम करता है. इसके बजाय, उपयोगकर्ता के काम को स्थानीय तौर पर तब सेव करें, जब डिवाइस और डिवाइस के वापस ऑनलाइन होने पर, क्लाउड से सिंक करें.

Chromebook को कई लोग एक-दूसरे के साथ शेयर भी कर सकते हैं. जैसे, स्कूल. लोकल स्टोरेज अनलिमिटेड नहीं है, इसलिए पूरे खाते एक साथ शेयर किए जा सकते हैं स्टोरेज के साथ सेव किया जाता है—किसी भी समय डिवाइस से हटाया जा सकता है. इसके लिए है, तो इस स्थिति को ध्यान में रखना बेहतर होगा.

एनडीके लाइब्रेरी को अपडेट करें

अगर आपका ऐप्लिकेशन, Android एनडीके लाइब्रेरी का इस्तेमाल करता है और उसका टारगेट एसडीके वर्शन 23 है या पहले से सेट है, तो पक्का करें कि ARM और x86, दोनों से टेक्स्ट की जगह बदल दी गई है आपकी एनडीके लाइब्रेरी के वर्शन. ऐसा इसलिए, क्योंकि वे Android 6.0 (एपीआई) में काम नहीं करते और उससे ऊपर के लेवल 23). अपनी एनडीके लाइब्रेरी में टेक्स्ट को एक जगह से दूसरी जगह ले जाने से, इस वजह से, Chromebook डिवाइसों के साथ काम करने से जुड़ी गड़बड़ियां भी हो सकती हैं. खास तौर पर, ऐसा तब हो सकता है, जब जो x86 आर्किटेक्चर का इस्तेमाल करने वाले डिवाइस पर काम करता है.

अपने ऐप्लिकेशन के लिए नए टेस्ट केस बनाना

अपने ऐप्लिकेशन के टेस्ट केस डेवलप करने के लिए, सबसे पहले यह पक्का कर लें कि आपने सही मेनिफ़ेस्ट फ़्लैग. खास तौर पर, screenOrientation को सेट करें unspecified तक. अगर आपको लैंडस्केप ओरिएंटेशन दिखाना है, तो sensorLandscape आज़माएं. इससे यह पक्का किया जा सकेगा कि टैबलेट पर लोगों को बेहतर अनुभव मिले.

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

अगर आपकी रुचि किसी खास डिवाइस के लिए किसी खास इनपुट डिवाइस हैंडलिंग में है कैटगरी, इनपुट बंद करने के लिए android.hardware.type.pc तय करें कंपैटबिलिटी मोड.

अगर किसी तरह की नेटवर्किंग का इस्तेमाल किया जा रहा है, तो पक्का करें कि वह ऐप्लिकेशन फिर से कनेक्ट हो सकता है किसी कनेक्शन समस्या का समाधान होने या इससे डिवाइस सक्रिय होने के बाद नेटवर्क से कनेक्ट हो जाता है स्लीप मोड पर टैप करें.

हम Chrome पर Android ऐप्लिकेशन के टेस्ट केस की सूची देखने का सुझाव देते हैं ओएस, जिसे टेस्ट प्लान में इस्तेमाल किया जा सकता है. टेस्ट केस में, ऐसी आम स्थितियों को शामिल किया गया है जिनके लिए Android ऐप्लिकेशन को तैयार किया जाना चाहिए अगर वे ChromeOS डिवाइसों पर चलने की उम्मीद हो.

मल्टी-विंडो और ओरिएंटेशन में बदलाव

ChromeOS का मल्टी-विंडो वाला एनवायरमेंट, स्थिति को एक जैसा बना सकता है और उसे याद रख सकता है समस्याओं को ज़्यादा आसानी से समझा जा सकता है. ViewModel का इस्तेमाल करें सेव करें और ज़रूरत पड़ने पर अपने राज्य को वापस लाएं.

ऐप्लिकेशन की स्थिति कैसी है, यह देखने के लिए अपने ऐप्लिकेशन को कुछ समय के लिए छोटा करें. इसके बाद, दूसरा ऐप्लिकेशन इस्तेमाल करें उस प्रोसेस को पूरा करें जिसमें ज़्यादा समय नहीं लगता. साथ ही, अपने ऐप्लिकेशन को इस बात की पुष्टि करने के लिए वापस लाएं कि वह वापस जिस राज्य में आपने छोड़ा था.

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

अगर आपके ChromeOS डिवाइस पर यह सुविधा काम करती है, तो जांच करने के लिए लैपटॉप से टैबलेट मोड में बदलाव करें कि सब कुछ उम्मीद के मुताबिक काम कर रहा है या नहीं. टैबलेट मोड में होने पर, डिवाइस को एक बार घुमाने के लिए टेस्ट ओरिएंटेशन बदलें, फिर लैपटॉप मोड में वापस ट्रांज़िशन करें. यह तरीका दोहराएं कुछ मामलों में.

यूज़र इंटरफ़ेस (यूआई) एलिमेंट ऑफ़ सेट करके, पक्का करें कि सबसे ऊपर वाला बार आपके ऐप्लिकेशन को नुकसान न पहुंचा रहा हो का इस्तेमाल करें. ChromeOS डिवाइसों के लिए, पक्का करें कि आपका ऐप्लिकेशन स्टेटस बार में ज़रूरी जानकारी नहीं रखता.

अगर आप कैमरा या पेन जैसी किसी दूसरी हार्डवेयर सुविधा का इस्तेमाल कर रहे हैं, तो पक्का करें कि विंडो और डिवाइस में बदलाव करते समय यह ठीक से काम करे पहले ही बताया जा चुका है.