2012-02-15 11 views
0

通知を介してアクティビティを開くときに、いくつかのパラメータを通知する必要があります。Android:通知バンドルが起動しない

@Override 
public void onCreate(Bundle savedInstanceState) 
{ 
    try{ 
     super.onCreate(savedInstanceState);   

     setContentView(R.layout.main); 
     Bundle extras = getIntent().getExtras(); 

     if(extras != null) 
     { 
      Log.d("YAY","got extras"); 
     } 

問題がある、私は任意のエキストラを取得することはありません:私の活動で

private void notify_newOrders(int count) { 
    int icon = R.drawable.ic_notification; 

    String ns = Context.NOTIFICATION_SERVICE; 
    NotificationManager mNotificationManager = (NotificationManager) getSystemService(ns); 

    CharSequence tickerText = infotext; 
    long when = System.currentTimeMillis(); 

    Notification notification = new Notification(icon, tickerText, when); 
    Context context = getApplicationContext(); 
    CharSequence contentTitle = "Title"; 
    CharSequence contentText = "Infotext"; 

    Intent notificationIntent = new Intent(this, TestActivity.class);  
    notificationIntent.putExtra("resuming", "123"); 
    notificationIntent.setAction("resuming"); 

    notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP); 

    PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, PendingIntent.FLAG_UPDATE_CURRENT); 

    notification.flags |= Notification.DEFAULT_ALL; 
    notification.flags |= Notification.FLAG_AUTO_CANCEL;   

    notification.number = count; 

    notification.setLatestEventInfo(context, contentTitle, contentText, contentIntent); 

    mNotificationManager.notify(WORKNOTIFICATION_ID, notification);   

} 

私は、次があります。私はここで似たような(解決された)問題を遂行し、彼らが働いていた理由を知ろうと努力してきたが、役に立たなかった。助けて! logCatで

私は、彼らが関連している場合は、何のアイデアをこれらを取得していない:

INFO/ActivityManager(59): Starting activity: Intent { act=resuming flg=0x24000000 cmp=com.test.test/.TestActivity bnds=[0,101][320,165] (has extras) } 
WARN/ActivityManager(59): startActivity called from non-Activity context; forcing Intent.FLAG_ACTIVITY_NEW_TASK for: Intent { act=resuming flg=0x24000000 cmp=com.test.test/.TestActivity bnds=[0,101][320,165] (has extras) } 

答えて

2

正しいことが判明は

@Override 
public void onNewIntent(Intent intent) 
0

あなたの活動が作成されますが、代わりに再開されていないように見えます。 getExtrasコードをonCreate()からonResume()に移動してください。これはうまくいくはずです。

+0

を作ることだった、何の助けをすることをを試しただけでなく、他のONSTARTなど。 – vampireLady

関連する問題