Czy powiadomienie lokalne pojawi się, gdy aplikacja jest na pierwszym planie i aktualnie działa w iPhone SDK?Lokalne powiadomienie na pierwszym planie w iPhone SDK
Odpowiedz
Nie, otrzymasz powiadomienie w appdelegate.
- (void) application:(UIApplication *)application didReceiveLocalNotification: (UILocalNotification *)notification {
//Place your code to handle the notification here.
}
jeśli aplikacja jest obecnie w planie następująca funkcja zostanie wywołana w Delegata:
- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)Notifikation
można zdecydować, aby pokazać alertview, ale standard nie pojawi się sama
To się nazywa, niezależnie od tego, czy aplikacja już działa, czy nie. –
Tylko jeśli użytkownik kliknie przycisk "Otwórz" ... – Bastian
Zrobiłem lib, aby uczynić animację prawie tak samo jak lokalne powiadomienia.
Sprawdź to: https://github.com/OpenFibers/OTNotification
Demo:
I można dodawać nowe wiadomości do tego lib, gdy otrzymał wiadomość w
- (void) application:(UIApplication *)application didReceiveLocalNotification: (UILocalNotification *)notification
{
OTNotificationManager *notificationManager = [OTNotificationManager defaultManager];
OTNotificationMessage *notificationMessage = [[OTNotificationMessage alloc] init];
notificationMessage.title = [self notificationTitle];
notificationMessage.message = @"A notification. Touch me to hide me.";
[notificationManager postNotificationMessage:notificationMessage];
}
The przyjęte anser ma rację, ale to za mało t o otrzymywać wszystkie powiadomienia i pokazywać coś użytkownikowi od
- (void) application:(UIApplication *)application didReceiveLocalNotification: (UILocalNotification *)notification {
Musisz sprawdzić, czy jest to bieżące powiadomienie, czy nie. Czasami są uruchamiane inne powiadomienia (na przykład po ich anulowaniu). Tak, trzeba sprawdzić, że jest to, czego z wyjątkiem:
- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification {
if (fabs([[NSDate date] timeIntervalSinceDate:[notification fireDate]]) <= 0.5f)
{
[[[UIAlertView alloc] initWithTitle:NSLocalizedString(@"Notification alert", @"")
message:notification.alertBody
delegate:self
cancelButtonTitle:@"Ok" otherButtonTitles:nil] show];
}
}
Swift 2.2:
func application(application: UIApplication, didReceiveLocalNotification notification: UILocalNotification) {
var state = application.applicationState
if state == .Active {
// handle the notification, e.g. show an alert
}
}
Swift 3.0:
func application(_ application: UIApplication, didReceive notification: UILocalNotification) {
var state: UIApplicationState = application.applicationState
if state == .active {
// handle the notification, e.g. show an alert
}
}
- 1. Powiadomienia Firebase na pierwszym planie
- 2. Lokalne powiadomienie w tle
- 3. Powiadomienie lokalne nie działa na iOS5
- 4. Wymuszenie mojej aktywności na pierwszym planie?
- 5. Java, uruchom inną aplikację na pierwszym planie
- 6. applicationReceivedRemoteMessage wykonuje się tylko na pierwszym planie.
- 7. Jak zmusić okno Mac na pierwszym planie?
- 8. Jak utworzyć zadanie na pierwszym planie?
- 9. Wyświetl powiadomienie push w polu alertu, gdy aplikacja działa na pierwszym planie.
- 10. Powiadomienie lokalne w WatchOS 3
- 11. Losowe lokalne powiadomienie w tle
- 12. Jak przybliżyć program działający w tle na pierwszym planie
- 13. Nowe okno GTK 3 na pierwszym planie na OSX
- 14. Jak zostać powiadomionym, gdy zmiana na pierwszym planie (na górze)
- 15. jak ustawić okno dialogowe choose.file() na pierwszym planie
- 16. Podstawienie polecenia Bash ($ (...)) wymuszanie procesu na pierwszym planie
- 17. Jak ustalić, czy usługa Android działa na pierwszym planie?
- 18. Jak sprawdzić czy aplikacja jest na pierwszym planie z usługi?
- 19. Jak sprawdzić, czy aplikacja jest na pierwszym planie lub w tle?
- 20. Lokalne powiadomienie push w systemie iOS W trybie wyciszenia/wyciszenia
- 21. zaszyfrować plik na iphone-sdk
- 22. GoogleAdMobAds w iphone sdk
- 23. Wyskakujące powiadomienie o telefonie iPhone
- 24. iPhone SDK pytanie audioSession
- 25. Jak uruchomić operacje w tle, gdy aplikacja na iOS znajduje się na pierwszym planie
- 26. Jak wyświetlić zielony pasek stanu podwójnej wysokości (In-Call) w aplikacji na pierwszym planie na urządzeniu?
- 27. iphone 4 sdk: Wykryj powrót z trybu tła
- 28. Stare Iphone sdk wersje
- 29. Jak ustawić unableviewcell unclallable na iphone sdk
- 30. iPhone SDK: Konwertuj MKMapPoint na CGPoint
dzięki. Teraz zachowałem metodę UIAlertView w aplikacji didReceiveLocalNotification, dzięki czemu mogę jej używać zamiast powiadomienia, gdy aplikacja jest już uruchomiona. Ale kiedy aplikacja działa w tle, a powiadomienie jest uruchamiane i gdy aplikacja przychodzi na pierwszy plan, ta metoda jest wywoływana i pojawia się alertViewView. Czy możesz mi powiedzieć, jak mogę tego uniknąć? –
OK, mamy applicationWillEnterForeground: metoda dla tego. Przepraszam głupie pytanie! Wielkie dzięki. –
Nie głupie pytanie - właśnie dałeś mi odpowiedź, której szukałem :-) –