2012-01-12 9 views
5

मैं एक एंड्रॉइड सेवा बना रहा हूं जो डिवाइस बूट प्रक्रिया पूरी होने के बाद चलना शुरू कर देगा। मेरी सेवा में मैं एक कार्य बना रहा हूं। यह कार्य कुछ स्थितियों के आधार पर किसी भी समय शुरू या बंद कर दिया जाएगा। मेरा इरादा तब भी है जब भी मैंने अपना काम शुरू किया, मैं स्टेटस बार में एक आइकन प्रदर्शित करना चाहता हूं ताकि यह पता चल सके कि मेरा कार्य चालू हो रहा है जैसे ब्लूटूथ आइकन चालू होने पर प्रदर्शित किया जाएगा।मेरा कार्य चल रहा है जब स्टेटस बार में एक आइकन प्रदर्शित करना

+0

संभव क्लिक जब शुरू किया जाएगा डुप्लिकेट [पृष्ठभूमि में शामिल होने पर, स्थिति बार में स्थिति बार में आइकन कैसे दिखाया जाए?] (http://stackoverflow.com/questions/3973208/how-to-show-an-icon-in-the- स्टेटस-बार-कब-एप्लिकेशन-चल रहा है-इन-इन) –

उत्तर

0

आप की तरह Custom title with image

एक कस्टम शीर्षक पट्टी का उपयोग और वरीयता निर्धारित आपकी सेवा को सक्रिय या निष्क्रिय और सेट कस्टम शीर्षक है, जांच करें कर सकते हैं। लेकिन ऐसा करने से पहले कृपया पढ़ें: http://developer.android.com/guide/topics/ui/notifiers/notifications.html

+0

कस्टम शीर्षक स्टेटस बार आइकन से अलग है। असल में मेरे ऐप में कोई गतिविधि नहीं, डिवाइस के बूट होने के बाद यह एक सेवा स्वचालित रूप से लॉन्च हो गई। ऐप में गतिविधि के बिना कस्टम शीर्षक का उपयोग करना संभव है? किसी भी तरह से आपके उत्तर के लिए धन्यवाद। –

+0

हां, किसी भी गतिविधि के बिना सेवा शुरू करना संभव है ... बस अपनी सेवा को अग्रभूमि के रूप में शुरू करें। सेवा – waqaslam

7

आपको Notification की आवश्यकता है। कोड :)

बात कर रही है अपने सेवा में:

private NotificationManager mNM; 
private int NOTIFICATION = 10002; //Any unique number for this notification 

अधिसूचना दिखाने के लिए:

private void showNotification() { 
    // In this sample, we'll use the same text for the ticker and the expanded notification 
    CharSequence text = getText(R.string.local_service_started); 

    // Set the icon, scrolling text and timestamp 
    Notification notification = new Notification(R.drawable.status_icon, text, System.currentTimeMillis()); 

    // The PendingIntent to launch our activity if the user selects this notification 
    PendingIntent contentIntent = PendingIntent.getActivity(this, 0, 
      new Intent(this, MainActivity.class), 0); 

    // Set the info for the views that show in the notification panel. 
    notification.setLatestEventInfo(this, getText(R.string.local_service_label), text, contentIntent); 

    // Send the notification. 
    mNM.notify(NOTIFICATION, notification); 
} 

और इसे छिपाने के लिए, तो आप बस यह करने के: यहाँ

mNM.cancel(NOTIFICATION); //The same unique notification number. 

कुछ स्पष्टीकरण हैं:

  • R.drawable.status_icon: सूचना आइकन
  • R.string.local_service_started: अधिसूचना शीर्षक
  • R.string.local_service_label: अधिसूचना नवीनतम जानकारी (उप-शीर्षक)
  • MainActivity.class: गतिविधि है कि उपयोगकर्ता अधिसूचना
+0

सेवा शुरू करने के लिए आप अधिसूचना ऑब्जेक्ट प्रदान करेंगे, मुझे लगता है कि स्टेटस बार आइकन से अधिसूचना अलग है। मैंने स्टेटस बार पर प्रदर्शित ब्लूटूथ आइकन की तरह उल्लेख किया है। मुझे लगता है कि आपका उत्तर मेरी आवश्यकताओं के लिए उपयुक्त नहीं है। किसी भी तरह से मेरे प्रश्न का जवाब देने के लिए धन्यवाद। –

+0

क्या आप एक ऐसे आइकन की तरह हैं जिसका उपयोगकर्ता कभी भी बातचीत नहीं करेगा? 3 जी आइकन, सिंक और हेडफोन की तरह? – iTurki

+0

हाँ, क्या यह ऐप के साथ संभव है? –

संबंधित मुद्दे