Le son personnalisé UILocalNotification ne joue pas dans iOS7

J'utilise UILocalNotification dans une application.

Dans l'application il y a deux sons qui sont joués conditionnellement – j'ai appliqué les conditions appropriées pour eux.

Mais lorsque j'installe l'application et l'exécute sur un périphérique iOS 7 , elle triggers la notification locale mais aucun son n'est joué dans l'application.

Le code est donné ci-dessous pour définir la notification:

  UILocalNotification *localNotification = [[UILocalNotification alloc] init]; if (localNotification == nil) return; localNotification.fireDate = [pickerView date]; localNotification.timeZone = [NSTimeZone defaultTimeZone]; if (alarm_number == 1) { localNotification.alertBody = [NSSsortingng ssortingngWithFormat:@"First Alarm"]; } else { localNotification.alertBody = [NSSsortingng ssortingngWithFormat:@"Second Alarm"]; } localNotification.alertAction =@"Ok"; NSSsortingng *message = [[NSSsortingng alloc]initWithSsortingng:@""]; if(alarm_number == 1) { localNotification.soundName=@"Alarm_1.mp3"; message = @"First Alarm Scheduled"; } else { localNotification.soundName=@"Alarm_2.mp3"; message = @"Second Alarm Scheduled"; } localNotification.applicationIconBadgeNumber = 1; // Specify custom data for the notification NSSsortingng *alarmSsortingng; if (alarm_number==1) { alarmSsortingng = [NSSsortingng ssortingngWithFormat:@"First Alarm"]; } else { alarmSsortingng = [NSSsortingng ssortingngWithFormat:@"Second Alarm"]; } NSDictionary *infoDict = [NSDictionary dictionaryWithObject:alarmSsortingng forKey:@"AlarmFor"]; localNotification.userInfo = infoDict; // Schedule the notification [[UIApplication sharedApplication] scheduleLocalNotification:localNotification]; [localNotification release]; 

Ce que j'ai vérifié est le paramètre Son dans l'application Paramètres / Centre de notifications pour mon application.

Veuillez passer de la 1ère à la 3ème image pour voir ce que j'ai vérifié.

(1) Centre de notification

(1) Centre de notification

(2) Application

entrez la description de l'image ici

(3) Le son est éteint ici

entrez la description de l'image ici

Donc, pour activer cela, j'ai vérifié Inter App Audio à Capabilities in Targets de l'application et il était éteint comme indiqué dans l'image ci-dessous.

Capacités dans l'audio inter-application

Capacités dans l'audio inter-application

Ensuite, je l'ai changé sur On et il ressemble à montré dans l'image ci-dessous.

Capacités après avoir changé sur

Pourtant, il ne joue toujours pas de son dans les appareils iOS 7.

Quelqu'un a-t-il une idée de la raison pour laquelle cela ne fonctionne pas? Ce serait d'une grande aide.

Merci.

Avez-vous essayé d'éteindre le mode "Ne pas déranger"? J'ai le même problème, puis j'ai découvert que "Ne pas déranger" est activé. Après l'avoir éteint, tout marche bien.

essayez d'utiliser le file .caf au lieu de .mp3

 afconvert -f caff -d LEI16@44100 -c 1 wolf.wav wolf_out.caf 

Ma conjecture est que votre son n'est pas formaté de manière appropriée pour jouer par le operating system. Assurez-vous que votre son est formaté au format IMA4. En outre, assurez-vous que votre file est dans votre set d'applications, et vous devriez être prêt à partir.

Pour plus de reference et des questions similaires, voir cette question SO.

Choisissez un son personnalisé pour les notifications locales

Voici un lien pour le Guide de notification local et Push d' Apple . Il explique les sons en détail et les sons par défaut qui peuvent être utilisés.

J'ai rencontré le même problème, j'ai dû suivre les étapes suivantes:

  1. Convertir le file de mp3 ou wav à caf. Comme indiqué dans d'autres réponses, vous pouvez convertir les files wav, aif et mp3 dans le terminal en utilisant la command:

    afconvert -f caff -d LEI16@44100 -c 1 in.mp3 out.caf

  2. Vous pouvez également exporter avec Quicktime 7 en tant que .aif avec les parameters suivants. Linear PCM Rate 44.100 Taille d'échantillon PCM linéaire 16 ces files aif semblent être pris en charge.

  3. Assurez-vous que vos files durent less de 30 secondes, soit 29 secondes ou less.

  4. Ajoutez les files à la racine de votre package, vous pouvez les faire glisser dans Xcode ou faites un clic droit sur "append des files à (nom du projet)" Notez que vous devez sélectionner les options suivantes: a) nom (s)) 4) Référence le file par son nom incluant l'extension par exemple notif.soundName = @"sound.caf";

Assurez-vous de supprimer l'application de l'appareil / simulateur entre les tests ou vous ne verrez pas les résultats de vos modifications.

Si vous avez encore des problèmes, vérifiez que le file son est à la racine du projet. Vérifiez que le file son "Adhésion cible" est sélectionné dans l'inspecteur du file d'affichage.

Je n'ai pas compris pourquoi ça a marché.

Mais, enfin, j'ai résolu mon problème en faisant un nouveau projet xcode 5.0 et porté le vieux projet à ce nouveau projet et cela a fonctionné. Donc ça marche et je peux avoir du son aussi.

J'espère que cela peut aussi fonctionner pour les autres.

Veuillez d'abord essayer si setting-> notificationcenter-> sons n'est pas éteint.Vérifiez ensuite si réglage-> sons-> slider n'est pas sur zéro.Cela signifie que si vous avez des sons sur zéro qui ne permettra pas le son monter. J'espère que cela pourra aider.

Vérifiez que les "effets sonores" ne sont pas muets ou faibles. Le volume peut être élevé, mais si le volume des effets sonores est coupé, la notification locale peut ne pas sonner. Vous pouvez l'augmenter lorsque vous êtes sur l'écran d'accueil d'iOS, puis appuyez sur le button d'augmentation du volume.

Si le file mp3 est édité avec un outil, il est possible que quelque chose ait été manqué par l'outil d'édition.

J'ai eu le même problème en essayant de lire le file mp3 comme son de notification locale. Le son était plus court que 30 secondes, il était empackageé, tout semble régulier à la surface. Après quelques heures, j'ai réalisé que le problème a été causé par l'outil de coupe mp3 en ligne. J'ai trouvé un meilleur éditeur, et le file est devenu jouable sur notification.

Assurez-vous que le son est ajouté à l'set principal! entrez la description de l'image ici