Problèmes de notification silencieuse sans Xcode sur les appareils iOS 8

J'ai testé la fonctionnalité de notification silencieuse disponible depuis iOS 7.

Mon application cible iOS 7 et UP.

Je suis en train de tester sur un appareil iPhone6.

Tout semble fonctionner très bien dans mon application lorsque mon iPhone est connecté à l'ordinateur et que Xcode exécute l'application. Toutes les notifications silencieuses fonctionnent à 100% et apparaissent également dans ma request.

Cependant, si j'arrête Xcode et envoie une notification silencieuse – mon appareil ne reçoit pas du tout les notifications silencieuses.

J'ai fait BEAUCOUP de searchs mais rien ne m'a donné une réponse ni m'a aidé à déterminer ce qui se passe.

Je n'ai pas tué ma request. Donc, ce n'est pas le problème. Vous pouvez toujours voir l'application dans le sélecteur d'applications.

Mon application reçoit des notifications push régulières (avec et sans Xcode). Le problème est avec les notifications silencieuses.

Trouvé ces (mais ils ne m'a pas aidé à résoudre le problème):

  1. IOS 8 La notification push silencieuse ne fonctionne pas sans Xcode
  2. La notification iOS silencieuse ne fonctionne que si elle est connectée à xcode

J'ai ajouté la balise "Priority" à ma charge utile JSON … et toujours pas de chance.

C'est ma charge utile:

$body['aps'] = array( 'content-available' => 1, 'alert' => $message, 'Priority' => 10, 'sound' => 'default' );

J'ai même essayé "priorité" tous les casse-bas.

Mon téléphone reçoit l'alerte et le son est émis. Mais, si un user sélectionne "l'icône de l'application" au lieu de l'alerte de la bannière – il ne reçoit pas la notification silencieuse. Cela se produit uniquement lorsque mon application n'est pas connectée et fonctionne à partir de Xcode.

En outre, j'utilise un certificate de développeur et un profil d'approvisionnement.

MISE À JOUR 1:

Trouvé que le paramètre de priorité est censé être en dehors de la notification binary pas la charge utile APNS.

J'ai supprimé "priority" de la charge utile et configuré la notification binary en tant que command 2.

Voir: https://developer.apple.com/library/mac/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/CommunicatingWIthAPS.html

Testé avec Xcode. Tout fonctionne. Testé sans Xcode. Toujours le même problème. = (

MISE À JOUR 2

J'ai testé l'application sur un iPhone 4 Device. Les notifications silencieuses fonctionnent avec ou sans Xcode. Donc, cela doit être un problème ssortingctement avec iOS 8 appareils.

Mise à jour du titre pour refléter uniquement iOS 8. Je ne suis pas sûr de savoir comment résoudre ce problème pour les appareils iOS 8. Quelqu'un a des suggestions?

Bon, alors j'ai finalement résolu pourquoi la notification silencieuse ne fonctionnait pas sur les appareils iOS 8.

Dans la notification binary que vous envoyez à partir du script PHP, la priorité doit être définie sur 5. Il ne fonctionnera pas avec un 10 lorsque vous n'exécutez pas votre application à partir de Xcode.

Je ne sais pas pourquoi l'application a fonctionné avec un 10 lors de l'exécution de Xcode – c'est pourquoi il était si difficile de déterminer ce qui n'allait pas. Je ne sais pas non plus pourquoi une priorité de 10 a fonctionné pour les appareils iOS 7.

VOIR: https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/CommunicatingWIthAPS.html