2017-02-26 1 views
4

J'essaie d'intégrer des liens universels dans mon application iOS. Donc, chaque fois que quelqu'un appuie sur <myapp>.herokuapp.com/content est redirigé directement à l'application. J'ai suivi le guide this pour l'installation. J'ai fait la configuration suivante mais je n'arrive pas à la faire fonctionner. J'ai également vérifié d'autres threads sur stackoverflow mais aucun d'eux n'a résolu le problème.ios: Les liens universels ne fonctionnent pas sur iOS 10

  • Ajout de domaines associés dans l'onglet Capacités sur la cible de mon application. Deux domaines ont été ajoutés: activitycontinuation:<myapp>.herokuapp.com et applinks:<myapp>.herokuapp.com. Dans les phases de construction> Copier l'ensemble des ressources, le fichier .entitlements a été ajouté.
  • Got teamid de https://developer.apple.com/account/#/membership
  • Sur mon site a ajouté un itinéraire pour apple-app-site-association à https://<myapp>.herokuapp.com/apple-app-site-association qui renvoie le JSON suivant:

    { 
        "applinks": { 
         "apps": [], 
         "details": [ 
          { 
           "appID": "<teamId>.<bundleId>.dev", 
           "paths": [ "*" ] 
          }, 
          { 
           "appID": "<teamId>.<bundleId>", 
           "paths": [ "*" ] 
          } 
         ] 
        }, 
        "activitycontinuation": { 
         "apps": [ 
          "<teamId>.<bundleId>.dev", 
          "<teamId>.<bundleId>" 
         ] 
        } 
    } 
    
  • application installée de Xcode pour iPhone 6s Plus (périphérique physique) avec l'identifiant de paquet <bundleId>.dev et copié le lien https://<myapp>.herokuapp.com/content vers Notes mais il s'ouvre dans Safari.

Répondre

5

Résolution du problème.Le problème était que je testais avec la configuration de Debug. Quand j'ai essayé avec Release build tout fonctionne maintenant bien.

+0

comment définir la version release? Devrions-nous définir certains paramètres? –

+0

Dans Produit Xcode> Schéma> Modifier le schéma. Exécutez l'onglet> Configuration de la configuration> Libérer. – meteors

0

Collez votre domaine dans ce link et vérifier qu'il n'a pas les problèmes

+0

qui lient les vérifications pour Content-Type en tant que 'application/pkcs7-mime' alors qu'il n'est plus requis pour iOS 9 et supérieur. – meteors

+0

Donc, vous le servez avec l'application Content-Type/json? – DiegoQ

+0

Oui. Il est mentionné ici que vous pouvez utiliser l'application Content-Type/json: https://developer.apple.com/library/content/documentation/UserExperience/Conceptual/Handoff/AdoptingHandoff/AdoptingHandoff.html#//apple_ref/doc/uid/TP40014338-CH2-SW10 – meteors

1

Il y a beaucoup de questions qui pourraient empêcher vos liens Universal de travailler ici.

Voici quelques choses à revérifier: le fichier AASA

  • est correctement nommé et signées?
  • Testez-vous avec un périphérique physique? (certains disent que les liens universels fonctionnent désormais de manière cohérente dans le simulateur avec iOS 10, mais j'utiliserais toujours un périphérique physique)
  • Votre appareil et vos certificats de configuration sont-ils exempts d'erreur? Le fichier AASA n'a pas pu se mettre à jour lorsque l'application a été installée/lancée pour la première fois en raison d'un problème de connectivité réseau (je trouve que l'AASA échouera si Charles Proxy capture du trafic, par exemple)
  • test, commencez-vous par coller le lien dans Notes, puis appuyez longuement dessus? Voyez-vous l'option de menu "Ouvrir dans l'application"? Si c'est le cas, Universal Linking fonctionne correctement et vient d'être désactivé sur l'appareil.

Je recommande également en cours d'exécution par la poste super blog de Alex Austen sur ce sujet, car cela peut donc vous aider à repérer le problème (ici: https://blog.branch.io/how-to-setup-universal-links-to-deep-link-on-apple-ios-9/).

La branche dispose d'un certain nombre d'outils/ressources pour identifier les problèmes de liaison universelle. Ils sont spécialement conçus pour être utilisés avec des liens de la Direction, mais vous les peut encore trouver utile:

+0

Bonjour @dwestgate - Je n'ai pas signé le fichier AASA car il est mentionné que les fichiers AASA signés ne sont requis que si vous avez une prise en charge inférieure à iOS 9.0. Je sers le fichier avec l'application Content-Type/json. - Oui, je suis en train de tester sur un périphérique physique. - Mon profil d'approvisionnement semble correct car je suis capable d'installer une version de build sur mon iPhone. - Je ne sais pas que Apple essaie de télécharger le fichier AASA lorsque j'installe l'application. Si oui, je vais essayer de capturer la demande en utilisant Charles Proxy mais actuellement je ne l'ai pas en cours d'exécution. – meteors

+0

- J'ai installé l'application avant d'écrire dans Notes et il n'y a pas d'options Open App disponibles en appui long. – meteors

+0

Ohh pourquoi stackoverflow ne supporte pas la démarque dans les commentaires? – meteors