Mam wdrożenie powiadomienia GCM. Wiem, że aplikacja kliencka otrzymuje powiadomienie, czy znajduje się na pierwszym planie, w tle czy w stanie zabicia. Chciałbym wiedzieć, jak mogę uruchomić moją aplikację po otrzymaniu powiadomienia, gdy aplikacja znajduje się w stanie uśmiercenia?Uruchamianie aplikacji po otrzymaniu powiadomienia GCM
Odpowiedz
W odbiornika komunikatów, mam następujące:
final Intent notificationIntent = new Intent(context, YourActivity.class);
notificationIntent.setAction(Intent.ACTION_MAIN);
notificationIntent.addCategory(Intent.CATEGORY_LAUNCHER);
Tutaj wymienić YourActivity.class z działalnością wejściowej. To działało dla mnie.
Możesz użyć Menedżera powiadomień, aby rozpocząć swoją działalność.
spróbować użyć poniższy kod Wewnątrz onMessage() metoda, która jest zastąpiona metoda w klasie, która rozciąga GCMBaseIntentService klasę GCM.
int icon = R.drawable.your_app_icon;
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, YOUR_ACTIVITY.class);
notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
// notificationIntent.putExtra("PostName", vPostText);
// Log.i(TAG, "Sent Postid " + postid);
// Util util = (Util) context.getApplicationContext();
// util.setPostID(postid);
// util.setNotify(true);
// util.setUserNAME(vPortCode);
// util.setPostNAME(vPostText);
// util.setmEDIA(vMedia);
// util.setmEDIATHHUMB(vMediaThumb);
// util.setmEDIATYPE(vMediaType);
// util.setAirportName(vAirportName);
notificationIntent.putExtra("Set_image", true);
notificationIntent.putExtra("Notify", true);
// set intent so it does not start a new activity
// notificationIntent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
// notificationIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
// notificationIntent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
// | Intent.FLAG_ACTIVITY_SINGLE_TOP);
PendingIntent intent = PendingIntent.getActivity(context,
(int) System.nanoTime(), notificationIntent, 0);
notification.setLatestEventInfo(context, title, message, intent);
notification.defaults |= Notification.DEFAULT_SOUND;
notification.flags |= Notification.FLAG_AUTO_CANCEL;
notificationManager.notify((int) System.nanoTime(), notification);
Dziękuję. Wiem, jak rozpocząć działanie z poziomu aplikacji. Ale, co chciałbym zrobić, to po otrzymaniu powiadomienia, jeśli moje zgłoszenie jest w tle, przyniosę je na pierwszy plan, , jeśli jest na pierwszym planie, wtedy kontynuowałem przetwarzanie, a jeśli moja aplikacja jest włączona, stan stop/zabite, a następnie chcę "ponownie uruchomić aplikację" nie aktywność. Czy możesz mi powiedzieć, czy jest jakiś sposób uruchomienia aplikacji, gdy aplikacja jest w stanie stop/zabity po otrzymaniu powiadomienia? – jasdmystery
@jasdmystery: znalazłeś się poza domem? Mam do czynienia z tym samym problemem. – user836026
Patrz odpowiedź powyżej. – jasdmystery
- 1. Dodaj nowe powiadomienie po otrzymaniu powiadomienia push (nie zastępuj starego)
- 2. Otrzymuj dane z powiadomienia GCM
- 3. uruchamianie z usługi po kliknięciu powiadomienia
- 4. GitHub: Enterprise po otrzymaniu haka
- 5. Android GCM włącz światła
- 6. Czy istnieje sposób na przebudzenie aplikacji na iOS po otrzymaniu powiadomienia wypychania, nawet gdy zostanie zabity?
- 7. Powiadomienia push po zakończeniu aplikacji
- 8. Czy można zmienić domyślny styl powiadomienia powiadomienia po instalacji aplikacji?
- 9. wycofanie/anulowanie powiadomienia gcm z Androidem
- 10. konfigurowanie git haka po otrzymaniu
- 11. Dane wysyłane zmienione po otrzymaniu
- 12. Powiadomienie push dla aplikacji Android GCM do aplikacji lokalizacyjnej
- 13. Android 4.1.1 Tworzenie stosu dla aktywności po otrzymaniu powiadomienia o identyfikatorze URI
- 14. Jak otworzyć kolejny ekran z głównego ekranu po otrzymaniu powiadomienia push
- 15. Android - powiadomienia wypychania GCM nie pojawiają się na liście powiadomień
- 16. Korzystanie z GCM na Androida i iOS bez powiadomienia payload
- 17. Jak wyrejestrować się z GCM po odinstalowaniu aplikacji
- 18. Powiadomienia push na Androida: Google GCM a Amazon SNS?
- 19. Powiadomienia push GCM na Androida 3.1: wyłącz odbiornik transmisji
- 20. Po otrzymaniu odsyłaczy nieznanych rodzajów w NDB
- 21. Nieoczekiwany błąd systemowy po otrzymaniu Push
- 22. Usuń sms android po otrzymaniu bez opóźnienia
- 23. Uruchamianie aplikacji Android bez głównej aktywności i uruchamianie usługi po uruchomieniu aplikacji
- 24. Usuwanie powiadomienia po kliknięciu
- 25. Powiadomienia push GCM powodują błąd 502 Bad Gateway
- 26. Otrzymuj powiadomienia lokalne po usunięciu i ponownym zainstalowaniu aplikacji iPhone
- 27. Powiadomienia lokalne są wyzwalane po odinstalowaniu i ponownym zainstalowaniu aplikacji
- 28. Android-Blackberry GCM: Nie można zarejestrować przeniesionej aplikacji na Androida do usług GCM
- 29. Uruchamianie Facetime z aplikacji?
- 30. Uruchamianie sekwencji aplikacji Swift
Co zrobić, jeśli aplikacja jest już uruchomiona? – Ahmed
Co się stanie, jeśli aplikacja zostanie usunięta z listy zadań? w takim przypadku "odbiornik wiadomości" nie zostanie wywołany. Będzie obsługiwany przez system i kliknięty tagiem "click_action". Ale moją troską jest moja aktywność docelowa po otrzymaniu powiadomienia. –
jak uzyskać kontekst tutaj w wiadomości fcm? –