2015-04-17 1 views
0

Je développe une application iOS qui va diffuser de la musique à ma voiture en utilisant EAAccessory. Cela fonctionne très bien si j'ai une application en cours d'exécution et est ouvert et fonctionne aussi bien si l'application est en arrière-plan. Mais je me demandais juste s'il est possible de démarrer l'application si elle ne fonctionne pas du tout (pas même en arrière-plan) et commencer à diffuser de la musique dès que didConnectNotification est reçu.Démarrez l'application si elle ne fonctionne pas en arrière-plan et a reçu EAAccessoryDidConnectNotification

Toute aide serait grandement appréciée. Je vous remercie.

Répondre

0

Si votre application est suspendue après que le téléphone ait décidé de la laisser fonctionner ou non, cette notification sera mise en file d'attente. Lorsque votre application s'exécute à nouveau, elle recevra les notifications manquées dans la file d'attente. Donc, si vous manquez cette fenêtre où vous êtes en arrière-plan avant d'être tué ou tout simplement ne pas en cours d'exécution, EAAccessoryDidConnectNotification ne sera pas en mesure de sortir votre application de la suspension ou de provoquer son lancement autant que je sache.

+0

l'ai eu .. merci Osez! Existe-t-il un moyen d'inviter l'utilisateur sur l'iPhone comme une notification push disant "s'il vous plaît lancer l'application pour commencer le streaming" après une connexion réussie avec EAAccessory? Comme s'abonner à l'événement de niveau système ou quelque chose comme ça? – user1953941

+0

Dans des circonstances normales, vous pourriez publier une notification locale pour le faire. Mais ici, malheureusement, les mêmes mises en garde s'appliquent. Votre application ne saura rien du tout concernant cette notification tant qu'elle n'aura pas l'occasion de s'exécuter à nouveau. Si quelque chose d'autre que cette notification provoque l'exécution de votre application en arrière-plan et qu'elle remarque que l'accessoire est connecté, cela peut déclencher une poussée. Le problème est qu'il n'y a aucune garantie dans ce cas quand/si votre application va fonctionner de nouveau (en arrière-plan ou en premier plan) et que la poussée peut très bien être retardée au point d'être inutile ou ennuyante. – Dare