web-dev-qa-db-fra.com

Comment enregistrer un schéma d'URL d'ouverture d'application personnalisée avec Xcode 4?

Xcode4 demande un grand nombre d'arguments simplement pour rendre cette chose simple possible:

NSString *stringURL = @"twitterriffic://";
NSURL *url = [NSURL URLWithString:stringURL];
[[UIApplication sharedApplication] openURL:url];

Xcode 4 Info.plist editor

A quoi servent toutes ces propriétés? Pourquoi une image? Dois-je répéter l'identifiant de l'application ici? Quel rôle choisir si je veux que quiconque puisse appeler cette URL pour ouvrir mon application? Et à quoi servent ces propriétés supplémentaires de type url?

Je n'ai trouvé aucun tutoriel lié à Xcode4 sur la manière d'enregistrer un tel schéma d'URL avec Xcode 4.

72
openfrog

Edit your AppName-Info.plist file

  • Ouvrez "Fichiers de support" (dossier) à gauche et cliquez sur "YourAppName-Info.plist"
  • Choisissez une ligne du type "Code de type du système d’exploitation du créateur de l’offre groupée", passez la souris sur la ligne puis cliquez sur le symbole (+).
  • Cela crée une nouvelle ligne et tapez "types d'URL"
  • Cliquez sur le curseur à gauche pour voir l'élément 0 et vous renommerez la valeur de l'élément 0 en "Modèles d'URL", comme indiqué.
  • Ensuite, éditez le champ dans Item 0 et tapez votre prototocol; J'ai tapé "goomzee" comme indiqué

Maintenant, si j'installe cette application sur mon simulateur, que j'ouvre Safari et que je tape "goomzee: //" dans la barre d'adresse, l'application sera lancée.

97
Mike S.

Ouais, ce truc n'est pas simple, n'est-ce pas?

J'ai décrit les étapes nécessaires pour enregistrer une URL personnalisée ici: RL personnalisées

Mais, fondamentalement, la clé consiste à configurer une valeur "Types d’URL" dans votre fichier .plist. Voici à quoi ça ressemble dans XCode 5:

URL types

Dans cet exemple, j'ai enregistré le préfixe [~ # ~] mkb [~ # ~] , je peux donc utiliser ce nouveau type de URL dans les hyperliens sur les pages Web et les courriers électroniques (si je lis un courrier électronique dans l'application Mail de l'iPad):

Mail app

Si un utilisateur appuie sur l'un de ces liens, mon application iPad démarre et je peux accéder à la chaîne d'URL complète pour extraire les autres paramètres de l'URL (par exemple, "DocumentNumber = 100").

Le seul inconvénient, c'est que je n'ai pas encore déterminé comment tester si un utilisateur a installé une application iPad capable de reconnaître un préfixe particulier.

S'ils n'ont pas et qu'ils tapent sur l'un de ces liens MKB: // sur leur iPad, ils recevront un message d'erreur déplorable:

Nope

26
Mike Gledhill

Vous pouvez continuer à enregistrer votre URL personnalisée en modifiant le fichier info.plist de votre application (comme indiqué dans l'une de vos précédentes questions ). Le nouvel éditeur de Xcode 4 est supposé être pratique pour faciliter l'ajout des entrées. Tout ce qu'il fait, c'est apporter les mêmes modifications info.plist que vous feriez manuellement. Si vous souhaitez utiliser le nouvel éditeur, il vous suffit de renseigner les champs "Identifiant" et "Schémas d'URL". Vous n'avez pas besoin d'une image, d'une icône ou de propriétés d'URL supplémentaires.

Les autres propriétés (icône, etc.) ne sont pas bien documentées mais semblent ne s'appliquer que sur Mac OS X et peuvent être utilisées dans la boîte de dialogue Obtenir des informations du Finder pour afficher les types d'URL pouvant être ouverts par une application donnée. Par exemple, consultez le Guide de programmation des services de lancement .

17
Robin Summerhill

Ce que vous modifiez dans cet éditeur est également reflété dans le fichier de plis d'informations de votre projet. Il prend la forme de NomProjet - Info.plist. Espérons que cela aide.

0
Ying