2011-11-12 3 views
5

Je travaille actuellement sur un projet iOS qui nécessite l'envoi d'une notification push locale à un utilisateur avec un son. Le problème est que je veux que le son soit joué même si l'appareil est en sourdine ou en mode silencieux, mais je ne suis pas sûr que ce soit possible.iOS Ignorer la notification push locale Mode silencieux/silencieux

Il y a eu quelques questions similaires, mais aucun d'entre eux ont été répondu avec succès comme celui-ci: iPhone - Is it possible to override silent mode or have a recursive alert sound with push notification?

Disclaimer: Je comprends ce n'est pas une caractéristique souhaitable pour une application et qu'il pourrait être une cause de rejet de la Magasin d'applications.

+1

Avez-vous trouvé une bonne offre pour cette question? Je suis à la recherche de la solution. –

+0

Non, je ne l'ai pas fait, et je pense que c'est plus ou moins impossible. –

Répondre

2

Je viens de découvrir cette question lors de la recherche quelque chose lié à pousser notification ..

Vous pouvez y arriver en écoutant la notification push et commencer à jouer un son dans votre application lors de la réception de la notification push

1) pour iOS 7 et au-dessus, vous pouvez obtenir la notification push même utilisateur ne pas ouvrir l'application en utilisant cette méthode

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult result))completionHandler; 

2) dans la méthode, vous pouvez laisser votre application pour commencer la lecture d'un fichier audio. Vous pouvez avoir besoin d'un peu de travail supplémentaire pour configurer votre AVAudioSession afin de permettre à votre son de jouer même lorsque le périphérique est en mode silencieux. vous pouvez vérifier le documentation pour plus de détails - il va prendre un certain temps pour gérer correctement l'audio .. vous devez considérer les situations où une autre application joue déjà un son ou une sortie audio à partir d'un canal différent, par exemple. haut-parleur, écouteurs etc.

+1

Malheureusement, cela ne fonctionne pas lorsque l'utilisateur a fermé l'application de force, en la faisant glisser depuis le sélecteur d'applications. La méthode n'est pas appelée. –

+0

C'est une approche intéressante et la meilleure option disponible pour ce genre de comportement, même si elle ne correspond pas exactement au comportement demandé dans la question originale. – woody121

Questions connexes