2012-10-26 10 views
5

मुझे अधिसूचना चाहिए जो अधिसूचना बार पर टिकेगी जब तक कि संगीत इसे बंद नहीं कर लेता। वर्तमान में मैंने कुछ कोड लिखा है जिसमें मैं अधिसूचना दिखा सकता हूं लेकिन जब मैं स्पष्ट अधिसूचना बटन दबाता हूं या अधिसूचना केंद्र से गायब होने की तुलना में इसे स्वैप करता हूं। मुझे स्पष्टीकरण की तरह अधिसूचना चाहिए जो संगीत पर चलने तक बार पर रहती है। नोटिफिकेशन यहांसंगीत बंद होने तक अधिसूचना के लिए कोड को क्या करना है

int pendingRequestCode = 0; 
// final Resources res = getResources(); 
    notificationManager = (NotificationManager) getSystemService(
      NOTIFICATION_SERVICE); 
    Intent i = new Intent(getApplicationContext(),Mainactivity.class); 
    Notification.Builder builder = new Notification.Builder(this) 
.setSmallIcon(R.drawable.ic_action_search) 
.setAutoCancel(true) 
.setTicker("test ckick")  
.setContentIntent(PendingIntent.getActivity(getApplicationContext(), NOTIFICATION_DEFAULT, i,0)); 


     // Sets a custom content view for the notification, including an image button. 
     layout = new RemoteViews(getPackageName(), R.layout.notification); 
     layout.setTextViewText(R.id.notification_title, getString(R.string.app_name)); 
     Intent clickIntent = new Intent(); 
     clickIntent.setAction(ACTION_DIALOG); 
     PendingIntent pendingIntent = PendingIntent.getBroadcast(getApplicationContext(), pendingRequestCode, clickIntent, PendingIntent.FLAG_UPDATE_CURRENT); 
     layout.setOnClickPendingIntent(R.id.notification_button,pendingIntent); 
     builder.setContent(layout); 

     // Notifications in Android 3.0 now have a standard mechanism for displaying large 
     // bitmaps such as contact avatars. Here, we load an example image and resize it to the 
     // appropriate size for large bitmaps in notifications. 

     layout.setImageViewResource(R.id.notification_button, R.drawable.pause); 
    notificationManager.notify(NOTIFICATION_DEFAULT, builder.getNotification()); 

संकेत मिलता है कि घटना चल रही है जबाब enter image description here

उत्तर

15

उपयोग setOngoing(true) के लिए इंतजार के लिए अपने कोड है। आप setAutoCancel(true) को भी हटाना चाहते हैं, क्योंकि उपयोगकर्ता Notification को साफ़ करता है जब उपयोगकर्ता उस पर टैप करता है।

+0

धन्यवाद ... मेरे पास एक और मुद्दा यह है कि जब मेरा मीडिया प्लेयर संगीत बजा रहा है और यदि आप मेरे ऐप की तुलना में स्पॉटिफ़ाई या प्लेम्यूजिक ऐप जैसे किसी अन्य खिलाड़ी को संगीत बजाना बंद कर देना चाहिए .. तो यह कैसे प्राप्त किया जा सकता है। ..any मार्गदर्शन –

+0

@SwapAndroid: 'AudioManager' पर ऑडियो फोकस एपीआई देखें। – CommonsWare

+0

@ कॉमन्सवेयर मुझे एक सुझाव देता है। मैं इस लिंक (stackoverflow.com/questions/14508369/...) जैसे प्ले/पॉज़ को नियंत्रित करने के लिए रिमोटव्यू का उपयोग करके एक अधिसूचना बड़ा दृश्य बनाता हूं। सभी सही हैं, लेकिन जब मैं डिवाइस बैक बटन पर क्लिक करता हूं और एप्लिकेशन से बाहर क्लिक करता हूं तो ईवेंट पर क्लिक करें (प्ले/पॉज़/फॉरवर्ड/बंद करें) बटन काम नहीं करता है। कृपया मेरी मदद करें। –

0

अधिसूचना.फ्लैग = अधिसूचना .DEFAULT_LIGHTS | अधिसूचना। FLAG_AUTO_CANCEL

+0

देखें: https://stackoverflow.com/a/8479088/4628115। सुझाए गए संपादन 'अधिसूचना.फ्लैग | = ' – KGCybeX