ध्यान भटकाने वाले सुरक्षा उपायों को लागू करना

Android Auto का इस्तेमाल करते समय, उपयोगकर्ता का फ़ोन कार के स्पीकर से कनेक्ट होता है. इसलिए, आपको ड्राइवर का ध्यान भटकने से रोकने के लिए, अतिरिक्त सावधानियां बरतनी होंगी.

Android Auto के मीडिया ऐप्लिकेशन डेवलप करते समय, ड्राइवर का ध्यान भटकने से रोकने के लिए खास सुरक्षा उपाय लागू करें. इन सुरक्षा उपायों में ये शामिल हैं:

  • कार के स्पीकर से, आपके ऐप्लिकेशन का ऑडियो अपने-आप चलने से रोकना. भले ही, उपयोगकर्ता ने अलार्म शेड्यूल किए हों.

  • यह मैनेज करना कि जब आपका ऐप्लिकेशन संगीत और विज्ञापनों के बीच स्विच करता है, तब Android Auto सूचनाएं कैसे दिखाता है.

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

कार में अलार्म बंद करना

Android Auto के मीडिया ऐप्लिकेशन, कार के स्पीकर से तब तक ऑडियो नहीं चला सकते, जब तक उपयोगकर्ता ऑडियो चलाने की कार्रवाई न करे. जैसे, चलाएं बटन दबाना. आपके मीडिया ऐप्लिकेशन से उपयोगकर्ता की ओर से शेड्यूल की गई अलार्म के ज़रिए भी, कार के स्पीकर से संगीत नहीं बजना चाहिए.

इस ज़रूरी शर्त को पूरा करने के लिए, आपका ऐप्लिकेशन कोई भी ऑडियो चलाने से पहले, CarConnection का इस्तेमाल सिग्नल के तौर पर कर सकता है. आपका ऐप्लिकेशन यह पता लगा सकता है कि फ़ोन को कार की स्क्रीन पर प्रोजेक्ट किया जा रहा है या नहीं. कनेक्शन टाइप के लिए LiveData देखें. पुष्टि करें कि वैल्यू, CONNECTION_TYPE_PROJECTION के बराबर है.

अगर उपयोगकर्ता का फ़ोन प्रोजेक्ट हो रहा है, तो अलार्म की सुविधा देने वाले मीडिया ऐप्लिकेशन को इनमें से कोई एक कार्रवाई करनी होगी:

  • अलार्म बंद करें.

  • अलार्म को फिर से बजाएं STREAM_ALARM और फ़ोन की स्क्रीन पर अलार्म बंद करने के लिए यूज़र इंटरफ़ेस (यूआई) उपलब्ध कराएं.

मीडिया विज्ञापनों को मैनेज करना

डिफ़ॉल्ट रूप से, Android Auto, ऑडियो चलाने के सेशन के दौरान मीडिया मेटाडेटा में बदलाव होने पर सूचना दिखाता है. जब कोई मीडिया ऐप्लिकेशन, संगीत चलाने से विज्ञापन दिखाने पर स्विच करता है, तो सूचना दिखाने से उपयोगकर्ता का ध्यान भटकता है. Android Auto को सूचना दिखाने से रोकने के लिए, मीडिया मेटाडेटा कुंजी METADATA_KEY_IS_ADVERTISEMENT को METADATA_VALUE_ATTRIBUTE_PRESENT पर सेट करें:

Kotlin

import androidx.media.utils.MediaConstants

override fun onPlayFromMediaId(mediaId: String, extras: Bundle?) {
    MediaMetadataCompat.Builder().apply {
        if (isAd(mediaId)) {
            putLong(
                MediaConstants.METADATA_KEY_IS_ADVERTISEMENT,
                MediaConstants.METADATA_VALUE_ATTRIBUTE_PRESENT)
        }
        // ...add any other properties you normally would.
        mediaSession.setMetadata(build())
    }
}

Java

import androidx.media.utils.MediaConstants;

@Override
public void onPlayFromMediaId(String mediaId, Bundle extras) {
    MediaMetadataCompat.Builder builder = new MediaMetadataCompat.Builder();
    if (isAd(mediaId)) {
        builder.putLong(
            MediaConstants.METADATA_KEY_IS_ADVERTISEMENT,
            MediaConstants.METADATA_VALUE_ATTRIBUTE_PRESENT);
    }
    // ...add any other properties you normally would.
    mediaSession.setMetadata(builder.build());
}