2014-10-12 170 views
0

下面是我的接收器,工作正常..在接收功能正在打擊..我通過使用吐司證實了這一點。但爲什麼通知也沒有工作。爲什麼notifation沒有顯示?

@Override 
     public void onReceive(Context context, Intent intent) { 
      // TODO Auto-generated method stub 


      Bundle extra = intent.getExtras(); 
      String msg= extra.getString("message"); 

      //Toast.makeText(getApplicationContext(), "Message received."+ msg, 
       // Toast.LENGTH_LONG).show(); 



      NotificationManager mNotificationManager = (NotificationManager) getApplicationContext() 
        .getSystemService(Context.NOTIFICATION_SERVICE); 



      NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(
        RegisterActivity.this) 
        .setContentTitle("Notification From GCM") 
        .setStyle(new NotificationCompat.BigTextStyle().bigText(msg)) 
        .setContentText(msg); 
        mNotificationManager.notify(100, mBuilder.build()); 


     } 
    }; 

我錯過了什麼?

回答

0

你錯過了setSmallIcon用於助洗劑等等,更改代碼

 NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(
       RegisterActivity.this) 
       .setContentTitle("Notification From GCM") 
       .setStyle(new NotificationCompat.BigTextStyle().bigText(msg)) 
       .setContentText(msg); 

NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(
        RegisterActivity.this) 
        .setContentTitle("Notification From GCM") 
        .setSmallIcon(R.drawable.ic_stat_gcm) 
        .setStyle(new NotificationCompat.BigTextStyle().bigText(msg)) 
        .setContentText(msg); 

欲瞭解更多信息請參閱Implementing GCM Client和搜索sendNotification的方法。

+0

爲什麼我需要待定的意圖?我不想爲通知設置任何操作..我只想顯示通知 – 2014-10-12 09:47:33

+1

@ Mr.Vicky嘗試添加'.setSmallIcon(R.drawable.ic_stat_gcm)'並更改'ic_stat_gcm'與您的圖標名稱。請參閱編輯回答。 – 2014-10-12 09:48:25

+0

是的,它現在工作 – 2014-10-12 09:56:18

1
here

引用:

在最低限度,一個生成器對象必須包括以下內容:

  • 一個小圖標,通過setSmallIcon()
  • 甲標題組,由setContentTitle()
  • 設置
  • 明細文本,由setContentText()設置

所以我想,你必須在你的通知生成器中放置一個圖標。

正如您所見here,帶有無效圖標的通知將不會顯示。

+0

非常感謝你..我知道.. .. – 2014-10-12 09:55:58