2016-10-29 2 views
0

У меня странная проблема с моей версией Android GCM.Каков правильный способ ручного управления каждым нажатием GCM?

Это код, где я обрабатывать уведомления GCM:

public class GCMMessageHandler extends GcmListenerService { 

    @Override 
    public void onMessageReceived(String from, Bundle data) { 
     super.onMessageReceived(from, data); 
     Log.i(this.getClass().getSimpleName(), "GCM push received!"); 

     ACNotification notification = new ACNotification(getApplicationContext(), data); 
     notification.handleNotification(); 
    } 
} 

В принципе, что это делает, он передает данные уведомления в мой класс называется ACNotification, который затем считывает данные и отображает уведомление с помощью Notification.Builder.

Это прекрасно работает, когда приложение находится на переднем плане. Но как только пользователь закрывает приложение, кажется, что этот код никогда не выполняется, но приложение каким-то образом обрабатывает уведомление самостоятельно.

Он по-прежнему отображает уведомление, но Android делает это самостоятельно. Он не устанавливает соответствующий значок уведомлений (он просто использует значок ic_launcher для Android Android).

Любая идея, что я делаю неправильно? Как я могу заверить, что смогу обрабатывать каждое уведомление самостоятельно?

+0

немного расплывчатым. Основываясь на вашем поведении, вы используете как «уведомление», так и «данные» в своей полезной нагрузке. Если это так, это намеченное поведение. Вы должны получить данные от намерения, нажав на приложение. –

ответ

Смежные вопросы