1

基本的な通知の例を作成し、クリックされた通知をキャッチしようとしました。しかし、私はできませんでした。

私は配列リストに通知を入れ、それをエクストラを入れて受信者のアクティビティに渡し、それからキャッチしようとしますが、方法はありません!

とにかくどちらが好きかをキャッチすることはありますか?

ここに画像の説明を入力してください

4

1 に答える 1

4

BundleをPendingIntentと一緒に次のアクティビティに 渡すことができます。

Bundle bundle = new Bundle();
bundle.putString("Any String");
NotificationManager notifManager = (NotificationManager) this.getSystemService(this.NOTIFICATION_SERVICE);
int uniqueInteger = //create a unique Integer        
int icon = R.drawable.ic_launcher;
NotificationCompat2.Builder mNotification = new NotificationCompat2.Builder(this).setSmallIcon(icon)
                .setContentTitle(contentTitle).setContentIntent(getPendingIntent(bundle, uniqueInteger));

mNotification.setDefaults(Notification.DEFAULT_LIGHTS | Notification.DEFAULT_SOUND | Notification.DEFAULT_VIBRATE);
mNotification.setAutoCancel(true);
notifManager.notify(uniqueInteger, mNotification.build());

と方法getPendingIntent()

private PendingIntent getPendingIntent(Bunble bundle, int rc) { 
Intent notificationIntent = new Intent(this, YourNextActivity.class);
notificationIntent.putExtras(bundle);
return PendingIntent.getActivity(this, rc, notificationIntent, PendingIntent.FLAG_UPDATE_CURRENT);
}

ここではJakeWhartonによるNotificationCompat2を使用していますが、答えはそれに依存しません。

于 2012-11-27T22:31:18.943 に答える