2013-03-09 12 views
7

मैं एनिमेटेड android.R.drawable.stat_sys_upload के रूप में मेरे अधिसूचना स्थिति पट्टी आइकन स्थापित करने के लिए कोशिश कर रहा हूँ, यह ठीक काम करता है, लेकिन आइकन चेतन नहीं है:एंड्रॉयड - शो एनिमेटेड स्थिति पट्टी आइकन

private void showStatusNotification() { 

    NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); 

    Builder notificationBuilder = new NotificationCompat.Builder(this); 
    notificationBuilder.setAutoCancel(false); 
    notificationBuilder.setOngoing(true); 
    notificationBuilder.setContentIntent(PendingIntent.getActivity(this, 0, new Intent(this, 
      MainActivity.class), PendingIntent.FLAG_UPDATE_CURRENT)); 
    notificationBuilder.setContentTitle(getString(R.string.notification_title)); 
    notificationBuilder.setContentText(getString(R.string.notification_text)); 
    notificationBuilder.setSmallIcon(android.R.drawable.stat_sys_upload); 
    notificationManager 
      .notify(STATUS_NOTIFICATION_ID, notificationBuilder.build()); 
} 

उत्तर

10

समाधान सरल है, लेकिन बहुत मुश्किल है। आपको बस

notificationBuilder.setTicker(getString(R.string.notification_ticker)); 

जादू होता है और आपका आइकन एनिमेटेड होता है। यह इस बग से संबंधित है:

http://code.google.com/p/android/issues/detail?id=15657

आशा है कि यह किसी को मदद मिलती है।

2

बस @ gingo के उत्तर में जोड़ने के लिए, यदि आप स्टेटस बार में कोई भी टेक्स्ट दिखाना नहीं चाहते हैं तो अपनी अधिसूचना_टिकर स्ट्रिंग को स्ट्रिंग्स.एक्सएमएल (जो काफी स्पष्ट है) में रिक्त रखें।

इसके अलावा, अगर आप प्रगति या डाउनलोड करने के बाद बंद करने के लिए एनिमेटेड आइकन चाहते/अपलोड तो, पूरा कर लिया है अपने notificationBuilder लिए एक समान लग रही आइकन सेट और के रूप में अधिसूचना प्रबंधक पर विधि को सूचित फोन

mBuilder.setSmallIcon(R.drawable.ic_download); 
mNotifyManager.notify(0, mBuilder.build()); 
संबंधित मुद्दे