2011-07-20 12 views
0

私は、特定の時間が来たときに通知を表示するリモートサービスを利用しています。通知では余分な値(例:k = 0)を追加し、それを適切なアクティビティに渡します。最初のアクティビティは正しい値(k = 0)を受け取ります。しかし、次回がリモートサービスで再び来ると、k = 1にリセットし、この余分な値を通知に追加します。このアクティビティは新しい値(k = 1)ではなく、以前の値(k = 0)のみを受け取ります。私が間違っていると体が私のコードを見て修正することができますか?リモートサービスでのコード.....受信機でAndroid - インテントの問題

Notification notification = new Notification(R.drawable.tablet, text,System.currentTimeMillis()); 
    Intent intent = new Intent(RemoteService.this, SnoozeActivity.class); 
    intent.putExtra("k",c);  
    PendingIntent contentIntent = PendingIntent.getActivity(this, 0,intent, 0);   
    notification.setLatestEventInfo(this, getText(R.string.remote_service_label),text, contentIntent); 
    myNM.notify(0, notification); 

コード...

  Bundle extras = getIntent().getExtras(); 
    if(extras !=null){ 
     int v = extras.getInt("k"); 
     Log.w("SnoozeActivity","k value : "+v); 
    } 

は、それが意図してputExtra値をリセットすることが可能である...もしそうなら、それを行う方法?

答えて

0

あなたの受信機で試し

int v = Integer.parseInt(extras.getString("k"));代わり

2

あなたはgetActivityメソッドの第2引数に一意の番号を渡す必要があり

これがResultCodeのを確認したが、同一または異なる意図

のために異なっていました
PendingIntent contentIntent = PendingIntent.getActivity(this, unique_number,intent, 0); 

通知用のnotify()メソッドと同じ