3

サーバーからの gcm 通知またはメッセージの受信時にアプリのポップアップを実装したいと考えています。通常、サーバーはメッセージを GCM api に送信し、そこからメッセージがクライアントに送信されます。

クライアント側では通常、通知を受け取りますが、クライアントデバイスでその特定のアプリをアクティブ化または開くか、開始したくありません。

出来ますか?もしそうならどのように?

以下は私の通知生成関数です

  private static void generateNotification(Context context, String message) {
        int icon = R.drawable.ic_launcher;
        long when = System.currentTimeMillis();
        NotificationManager notificationManager = (NotificationManager)
                context.getSystemService(Context.NOTIFICATION_SERVICE);
        Notification notification = new Notification(icon, message, when);

        String title = context.getString(R.string.app_name);

        Intent notificationIntent = new Intent(context, MainActivity.class);
        // set intent so it does not start a new activity
        notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP |
                Intent.FLAG_ACTIVITY_SINGLE_TOP);
        PendingIntent intent =
                PendingIntent.getActivity(context, 0, notificationIntent, 0);
        notification.setLatestEventInfo(context, title, message, intent);
        notification.flags |= Notification.FLAG_AUTO_CANCEL;

        // Play default notification sound
        notification.defaults |= Notification.DEFAULT_SOUND;

        // Vibrate if vibrate is enabled
        notification.defaults |= Notification.DEFAULT_VIBRATE;
        notificationManager.notify(0, notification);    
    }

この質問がすでにどこかで尋ねられている場合は、親切にリダイレクトして、私の質問を削除してください。

前もって感謝します。

4

2 に答える 2