2015-12-28 60 views
0

我的疑問是爲什麼如果setSmallIcon在代碼中缺少通知不建:爲什麼Android通知不起作用,如果setSmallIcon丟失?

NotificationCompat.Builder builder = new NotificationCompat.Builder(this); 
// builder.setSmallIcon(R.drawable.ic_launcher); 
     Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.google.com/")); 
     PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, 0); 

     builder.setContentIntent(pendingIntent); 
     builder.setContentTitle("Google"); 
     builder.setContentText("Go to Google"); 
     builder.setSubText("Tap to go to link in notifications."); 

     NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); 
     notificationManager.notify(0, builder.build()); 

應用程序不要拋出任何異常,運行代碼的罰款,但通知沒有顯示,如果我取消

builder.setSmallIcon(R.drawable.ic_launcher); 

應用通知工作正常,所以我的問題是爲什麼builder.setSmallIcon強制顯示通知。 如果我不「噸要顯示在狀態欄smallicon任何解決方案?

+0

會怎樣通知顯示,如果你沒有在狀態欄中的圖標?? – Jim

+0

@jim我的問題是這僅僅是有可能在通知區塊中顯示通知而沒有在狀態欄上顯示任何圖標 –

回答

4

這是因爲.setSmallIcon(R.drawable.ic_launcher);這是一個預先的要求。如果你使用NotificationCompat.Builder。我讀了谷歌開發者博客的一些地方。

+1

好的,那麼如果我錯過了構建器。 setSmallIcon(R.drawable.ic_launcher)在我的代碼爲什麼代碼編譯和運行良好,但沒有通知我錯過了設置圖標。它是一個錯誤? –

+0

@kapilrajput男人編譯它很好,但它從來沒有檢查什麼是預先要求建設者的精神?' –