Je reçois une notification à distance et en fonction du type de notification, modifiez les contrôleurs d'affichage du contrôleur de navigation.
Tout fonctionne bien lorsque l'application est au premier plan ou lorsque l'application est en arrière-plan mais non complètement fermée (à partir de la barre multi-tâches). P>
Mais, lorsque l'application est fermée et reçoit une notification à distance, il se bloque dès qu'il s'ouvre. Est-ce que je fais mal avec la façon dont je confie les visiteurs? P>
Voici un code. p>
3 Réponses :
Vous n'initialisez pas correctement votre application lors de la réception d'une notification. Modifier l'application: DidfinishLaunchingwithOptions: Méthode à ceci:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions (NSDictionary *)launchOptions { // Push required screens into navigation controller NSDictionary *notif= [launchOptions objectForKey: UIApplicationLaunchOptionsRemoteNotificationKey]; [window addSubview:navigationController.view]; [window makeKeyAndVisible]; //Accept push notification when app is not open if (notif) { [self handleRemoteNotification:application userInfo:notif]; } return YES; }
Merci pour votre réponse VAKIO. Le problème quelque chose d'autre cependant. S'il vous plaît voir comment je l'ai résolu.
Oui, je pensais que c'était bizarre, mais je n'ai pas rattrapé dessus. Désolé.
J'ai pris cela résolu et cela n'a rien à voir avec les contrôleurs d'affichage, comme je le pensais.
Le problème était dans les lignes suivantes. J'envoie à Remotenotif.userinfo plutôt que Remotenotif lui-même. En outre, Remotenotif n'est évidemment pas de type uilocalnotification. C'est un objet Nsdictionnel. P>
avant strong> p> devrait être fort> p> < Pré> xxx pré> p>
Si vous fermez l'application qui commence à partir du mode de débogage Xcode et lorsque l'application commence par la notification push (application fermée) si le téléphone connecté à Mac (toujours votre téléphone en mode de débogage avec Xcode), il s'agira. Testez ce sénario avec un téléphone débranché. p>
Cela a résolu mon problème pour l'instant, mais pourquoi ?! N'a aucun sens pour moi
Comme tu l'as dit, aucun sens pour moi aussi. Mais je pense qu'une connexion ici avec l'appareil et le Mac.