हर Android रिलीज़ के साथ, एपीआई और व्यवहार में होने वाले बदलावों से, Android Auto और Android Automotive OS पर ऐप्लिकेशन के काम करने के तरीके पर असर पड़ता है. इस पेज पर, इन बदलावों के असर के बारे में बताया गया है. साथ ही, Android के नए वर्शन के साथ काम करने के लिए, अपने ऐप्लिकेशन को अपडेट करने का तरीका बताया गया है.
Android 16
- Android Auto, वर्चुअल डिवाइस के मालिक के ओवरराइड का इस्तेमाल करता है, ताकि पार्क किए गए ऐप्लिकेशन चलाते समय, ओरिएंटेशन, आसपेक्ट रेशियो, और साइज़ बदलने से जुड़ी पाबंदियों को अनदेखा किया जा सके
- अगर आपका ऐप्लिकेशन, ज़्यादा सुरक्षित इंटेंट के लिए Android 16 के अपडेट का इस्तेमाल करता है, तो आपको
CarAppService
के लिए<service>
एलिमेंट केandroid:intentMatchingFlags
एट्रिब्यूट कोallowNullAction
के तौर पर सेट करना पड़ सकता है. इससे Android Auto और Android Automotive OS को आपकी सेवा से कनेक्ट करने की अनुमति मिल जाएगी.
Android 15
- Android 15 या इसके बाद के वर्शन को टारगेट करने वाले ऐप्लिकेशन के लिए, विंडो इंसर्ट में बदलाव किए गए हैं. इसलिए, आपको Android Automotive OS पर उपलब्ध कराए गए ऐप्लिकेशन की जांच करनी चाहिए. इससे यह पुष्टि की जा सकेगी कि आपके ऐप्लिकेशन से लागू की गई गतिविधियां, उम्मीद के मुताबिक रेंडर हो रही हैं. Android Automotive OS के लिए खास बातों के बारे में ज़्यादा जानने के लिए, विंडो इंसर्ट और डिसप्ले कटआउट के साथ काम करना लेख पढ़ें.
Android 14
- Android 14 या इसके बाद के वर्शन को टारगेट करने वाले ऐप्लिकेशन के लिए, फ़ोरग्राउंड सेवा के टाइप की जानकारी देना ज़रूरी है. इसलिए, यह पक्का करें कि आपने अपने ऐप्लिकेशन में इस्तेमाल की जा रही हर फ़ोरग्राउंड सेवा के लिए, फ़ोरग्राउंड सेवा के टाइप की जानकारी दी हो. जैसे, नेविगेशन और मीडिया चलाने के लिए इस्तेमाल की जाने वाली फ़ोरग्राउंड सेवाओं के लिए.
- Android 14 या इसके बाद के वर्शन को टारगेट करने वाले ऐप्लिकेशन के लिए, यह ज़रूरी है कि रनटाइम में रजिस्टर किए गए ब्रॉडकास्ट रिसीवर, एक्सपोर्ट करने का तरीका बताएं. इसलिए,
CarConnection
एपीआई का इस्तेमाल करने वाले ऐप्लिकेशन कोandroidx.car.app:app:1.3.0-beta01
या इसके बाद के वर्शन पर अपडेट करना चाहिए. Connection API देखें. - Android 14 और इसके बाद के वर्शन वाले डिवाइसों पर Android Auto के काम करने के तरीके में बदलाव हुए हैं. इसलिए, Android Auto ऐप्लिकेशन से फ़ोन की स्क्रीन पर गतिविधियां लॉन्च करने के लिए,
ActivityOptions
उपलब्ध कराना ज़रूरी है. साथ ही,startActivity()
को कॉल करते समय, डिसप्ले आईडी को फ़ोन के डिसप्ले (DEFAULT_DISPLAY
) के डिसप्ले आईडी पर सेट करना ज़रूरी है.CarContext.requestPermissions()
तरीके का इस्तेमाल करने वाले ऐप्लिकेशन कोandroidx.car.app:app:1.7.0-alpha01
या इसके बाद के वर्शन पर अपडेट करना चाहिए. इसमें यह फ़िक्स शामिल है.
Android 13
- 'कार के लिए Android ऐप्लिकेशन' की लाइब्रेरी का इस्तेमाल करके बनाए गए ऐप्लिकेशन के लिए,
Configuration
में दी गई स्थान-भाषा, होस्ट ऐप्लिकेशन के लिए हर ऐप्लिकेशन के हिसाब से भाषा की प्राथमिकताएं दिखाती है. यह आपके ऐप्लिकेशन की भाषा नहीं होती.CarContext
Android 12
- Android 12 या इसके बाद के वर्शन पर काम करने वाले डिवाइसों पर, Android Auto चालू होने पर डिवाइस का यूज़र इंटरफ़ेस (यूआई) मोड नहीं बदलता. मैं कैसे पता लगाऊं कि Android Auto चल रहा है या नहीं? लेख पढ़ें.
- Android 12 या उसके बाद के वर्शन को टारगेट करने वाले ऐप्लिकेशन के लिए, कंपोनेंट एक्सपोर्ट करने से जुड़ी ज़्यादा सुरक्षित सुविधा की ज़रूरी शर्तों को पूरा करना ज़रूरी है. इसलिए, आपको
MediaBrowserService
औरCarAppService
सेवाओं के लिए,<service>
एलिमेंट परandroid:exported
एट्रिब्यूट को साफ़ तौर पर सेट करना होगा. - Android 12 या उसके बाद के वर्शन को टारगेट करने वाले ऐप्लिकेशन के लिए, PendingIntent की म्यूटेबिलिटी से जुड़ी ज़रूरी शर्तों को पूरा करना ज़रूरी है. इसलिए, आपको अपने ऐप्लिकेशन से बनाए गए किसी भी PendingIntent की म्यूटेबिलिटी के बारे में साफ़ तौर पर बताना होगा. उदाहरण के लिए, इसमें PendingIntent शामिल हैं. इनका इस्तेमाल मैसेजिंग ऐप्लिकेशन, मैसेज का जवाब देने या उन्हें पढ़े गए के तौर पर मार्क करने के लिए करते हैं.