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());
}