Comment créer des clips d'application?

Les clips d'application sont des versions légères de l'application iOS 14 qui permettent aux utilisateurs de terminer rapidement une tâche spécifique sans télécharger ni installer la version complète à partir de l'App Store. Apple a annoncé de tels gadgets à la WWDC 2020. Chez Rambler Group, nous avons été parmi les premiers à essayer les clips d'application pour les applications Rambler / Cashier.







Comment fonctionnent les clips d'application



App Clip fait partie d'une application complète (selon les règles d'Apple, les clips d'application ne peuvent pas dépasser 10 Mo), affinés pour effectuer une tâche spécifique. Par exemple, commander de la nourriture, acheter un billet, réserver un hôtel, etc. Dans le même temps, App Clips n'a pas besoin d'être installé - il vous suffit de l'exécuter à partir du lien.



Les gadgets ne sont pas enregistrés sur les écrans d'accueil de votre smartphone ou tablette iOS, mais se trouvent dans la bibliothèque d'applications. Ils sont automatiquement supprimés de l'appareil 30 jours après le dernier lancement. Pour la commodité des utilisateurs, App Clips a la possibilité d'ajouter la prise en charge d'Apple Pay et de se connecter via un identifiant Apple pour une autorisation et un paiement rapides pour les services et les biens - sans inscription, saisie d'informations supplémentaires et d'un numéro de carte bancaire.







Apple a également proposé de nombreuses options pour lancer des clips d'application à la fois hors ligne et en ligne:



  • Clips d'applications de marque
  • Balise NFC
  • QR Code
  • Lien URL
  • bannière
  • Cartes Apple
  • Siri.






Dans le même temps, les clips d'application utilisent la même base de code que l'application principale et, dans leur format, ils ressemblent plus à un plugin ou à un conteneur.



Un guide rapide pour ajouter des clips d'application à Rambler / Checkout



Dans cet article, nous voulons parler de certaines des nuances de la création de clips d'application pour les applications Rambler / Cashier.



Pour le moment, nous avons développé un algorithme pour intégrer la mini-application:



  1. Vous devez ajouter l'AppClip cible au projet, tout en spécifiant le projet cible comme parent (dans notre cas, cible Kassa).
  2. Ajoutez les pods nécessaires si nécessaire, en les spécifiant pour une cible spécifique dans le Podfile (exécutez l'installation du pod).
  3. App Clips Signing & Capabilities Associated Domains appclips:{ , App Clips}. «/» appclips:kassa.rambler.ru appclips:m.kassa.rambler.ru.
  4. target App Clips, .
  5. url App Clips App Clips , Apple



    func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void -> Bool.
  6. ( App Clips) AppStore.
  7. !




Une fois que l'utilisateur clique sur «Ouvrir AppClip / Application» sur l'écran contextuel avec App Clips, la méthode se déclenche:



func application (_ application: UIApplication, continue userActivity: NSUserActivity, restaurationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool



Le userActivity.webpageURL contient l'URL que nous avons cousue en tant que lien pour les clips d'application.



Après cela, en fonction des paramètres de ce lien, l'écran d'application souhaité s'ouvrira.



Types de liens



Pour le moment, Rambler / Cashier App Clips prend en charge trois scénarios d'achat de billets:



  • ouvrir l'écran des détails d'un événement spécifique;
  • ouvrir l'écran des détails pour un emplacement spécifique;
  • ouvrir un écran pour une session spécifique pour un événement spécifique.


Pour les tests, nous avons pris des liens de travail vers des événements disponibles sur Rambler / Cashier avec différents paramètres.



1. Événement . Nous avons pris creationid, cityid, creationtype comme paramètres d'entrée:

m.kassa.rambler.ru/msk/movie/100547?creationid=100547&cityid=2&creationtype=movie Le



lien ouvre l'écran des détails de l'événement, l'environnement est identique à l'achat d'un billet dans une application à part entière, sauf pour les choses suivantes :



  • il n'y a pas de bouton d'ajout aux favoris sur l'écran des détails de l'événement;
  • il n'y a pas d'affichage vidéo sur les détails de l'événement.


2. Emplacement . Placeid, cityid, creationtype ont été pris comme paramètres d'entrée:

m.kassa.rambler.ru/msk/cinema/formula-kino-cdm-54351?placeid=97417&cityid=2&creationtype=movie Le



lien ouvre l'écran des détails du lieu, l'environnement est identique à l'achat d'un billet en entier application, sauf:



  • sur l'écran avec les détails du lieu, il n'y a pas de panneau inférieur avec la fonctionnalité de navigation vers un lieu, l'ajout de celui-ci aux favoris et la possibilité de partager un lien.




3. Lien vers une session spécifique . Nous avons pris sessionid comme paramètres d'entrée:

m.kassa.rambler.ru/msk/concert/717293?cityid=2&sessionid=54293235 Le



lien ouvre un écran avec une session spécifique (sous la forme d'un diagramme de table ou de salle), l'environnement est identique à l'achat d'un billet dans une application à part entière.















Problèmes et solutions



1. L'application lip démarre et plante.



Le problème est observé lors de l'utilisation de pods tiers. Lors de la création du produit, les bibliothèques ne sont pas copiées dans le répertoire final. La raison en est l'absence de script dans les phases de construction.



Pour résoudre ce problème, vous devez ajouter un script (appelons-le [CP] Embed Pods Frameworks):



$ {PODS_ROOT} / Target Support Files / Pods- {ici le nom de la cible avec un upclip} / Pods- {ici le nom de la cible avec un upclip} -frameworks.sh



Dans le cas de Rambler / Cashier, le script ressemble à ceci:

$ {PODS_ROOT} / Target Support Files / Pods-KassaAppClip / Pods-KassaAppClip-frameworks.sh



2. L'assemblage avec App Clips est collecté, archivé et envoyé à l'AppStore, mais un rejet vient de- pour les poids d'application



La cause de ce problème est principalement due à des ressources volumineuses et à des bibliothèques tierces.



Une solution pour réduire la taille de la bibliothèque dans l'archive cible consiste à activer Bitcode (Build Settings / Build Options / Enable Bitcode).



3. Dans App Clips, la méthode UIDevice.current.identifierForVendor renvoie 000000-0000-000000 .....



Cela est dû à une fonctionnalité d'App Clips: Apple a restreint l'accès à l'identifiant pour des raisons de sécurité. Dans les clips de l'application Rambler / Cashier, nous utilisons un sel à 32 chiffres généré aléatoirement.



Quelle est la ligne du bas?



App Clips est un bon moyen d'augmenter les conversions pour les applications e-com comme Rambler / Checkout. Tous restent dans le noir:



  • les utilisateurs peuvent acheter rapidement un ticket sans télécharger ni installer l'application principale;
  • , iOS 14:





All Articles