मेरे प्रोजेक्ट को Android O में अपग्रेड करने के बाद
buildToolsVersion "26.0.1"
एंड्रॉइड स्टूडियो में लिंट अनुसरण अधिसूचना बिल्डर विधि के लिए एक पदावनत चेतावनी दिखा रहा है:
new NotificationCompat.Builder(context)
समस्या यह है: Android डेवलपर्स Android O में सूचनाओं का समर्थन करने के लिए NotificationChannel का वर्णन करते हुए अपने दस्तावेज़ीकरण को अपडेट करते हैं, और हमें एक स्निपेट प्रदान करते हैं, फिर भी समान पदच्युत चेतावनी के साथ:
Notification notification = new Notification.Builder(MainActivity.this)
.setContentTitle("New Message")
.setContentText("You've received new messages.")
.setSmallIcon(R.drawable.ic_notify_status)
.setChannelId(CHANNEL_ID)
.build();
मेरा प्रश्न: क्या अधिसूचना बनाने के लिए कोई और उपाय है, और फिर भी Android O का समर्थन करते हैं?
एक समाधान जो मैंने पाया है वह चैनल आईडी को अधिसूचना में एक पैरामीटर के रूप में पारित करना है। निर्माण निर्माता। लेकिन यह समाधान वास्तव में पुन: प्रयोज्य नहीं है।
new Notification.Builder(MainActivity.this, "channel_id")
notificationBuild.setChannelId("channel_id")
। मेरे मामले में यह अंतिम समाधान अधिक पुन: NotificationCompat.Builder
उपयोग किया जाता है क्योंकि मेरे एक जोड़े के तरीकों में पुन: उपयोग किया जाता है, जिससे आइकन, ध्वनियों और कंपन के मापदंडों को बचाया जा सकता है।