通知をクリックするとすぐにブロードキャストをトリガーするにはどうすればよいですか!?
質問する
239 次
1 に答える
0
onMessage() で GCMBaseIntentService を拡張するクラスで、以下のように setNotificationMethod を呼び出します。
private void setNotification(int defaults, String message, int flag) {
NotificationManager mNotificationManager;
int MOOD_NOTIFICATIONS = 12345;
mNotificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
// This method sets the defaults on the notification before posting it.
Intent handleNotification = new Intent(this, PushNotifier.class);
handleNotification.putExtra("Result", resultfrmServer);
// This is who should be launched if the user selects our notification.
PendingIntent contentIntent = PendingIntent.getActivity(this, 0,
handleNotification, PendingIntent.FLAG_UPDATE_CURRENT);
final Notification notification = new Notification(
R.drawable.ic_launcher, // the icon for the status bar
message, // the text to display in the ticker
System.currentTimeMillis()); // the timestamp for the
// notification
notification.setLatestEventInfo(this, // the context to use
getText(R.string.app_name),
// the title for the notification
message, // the details to display in the notification
contentIntent); // the contentIntent (see above)
notification.defaults = defaults;
notification.flags = flag;
mNotificationManager.notify(MOOD_NOTIFICATIONS,notification);
}
通知がクリックされると、PushNotifier クラスが開始されます。ここで、他のアクティビティを起動するか、ブロードキャスト レシーバーを登録するかを決定できます。また、プッシュ通知で受信した情報が必要な場合は、保留中の意図とそれに応じてユーザーを使用して、pushNotifier クラスに送信できます。
于 2013-02-28T07:05:02.383 に答える