Nerd For Tech
Published in

Nerd For Tech

App Clip: a small version of an application for performing specific tasks quickly

App Clip is a light version of an app that quickly performs specific tasks without downloading or installing the application itself.

How the user can launch App Clip:

  • by scanning the QR code;
  • by reading the NFC tag;
  • by associating it with a website so it can be seen in the browser when viewing the site or in messages after receiving a link.

In addition to the usual launching methods, App Clips can be associated with geolocation and location cards in Apple Maps. It means that the user can launch App Clips from Apple Maps or get Siri suggestion when he is in a specific location.

These are iOS versions of the QR code that can contain a graphic code or an NFC tag. In this case, there will be a corresponding icon (an NFC tag or a camera). These codes can be customized in different colors. Since this is Apple, there are several requirements for its size and various printing recommendations.

Evident guidelines from Apple

App Clips must be focused on offering the fastest resolution to your tasks by giving temporary access to any needed app.

Of course, Apple presented specific guidelines for App Clips:

  • Do not use App Clips solely for marketing purposes. App Clips should be of real value and help users with resolving their tasks. It can’t be used for advertising;
  • Make sure people can use App Clips instantly. Splash screens should be avoided;
  • Avoid user registration before the user can try App Clip;
  • Do not push the user to install the full version of the application.

Only when the task is completed, you can offer to download your application using a native banner.

Nevertheless, after the user completes his task (for example, buys some coffee in the App Clip of a coffee shop), a system banner for downloading the application can be displayed.

Inevident guidelines from Apple:

  • Make the App Clips shareable. After the user shares a link to App Clip on iMessage, the recipient can launch it. Offer the ability to share links to specific features in your App Clips and encourage users to share App Clips with friends;
  • Consistency with the main application. Launching App Clip while having the main application installed leads to the launch of the main application. So it is important that they both behave in the same way. If the tag specifies the flow of buying a cup of coffee, the application also must start the flow of buying coffee.
  • Often, the main application requires the user to log in before doing anything, but in the App Clip, the registration should be excluded or at least postponed till the last stages of the flow;
  • Interaction with App Clips should be fast and focused. It is necessary to limit the set of features and leave the complex ones in the main application;
  • When starting the App Clip, only the relevant part of its function should be shown.

A typical application usually looks like this.

For App Clip, we have to narrow the set of features to those that will help you to resolve a specific task quickly.

Avoid complex navigation components such as a tab bar or side menu. Run flows based directly on context.

So, after all, you still do need a Tab Bar.

At the same time, Apple is asking us to account for performing multiple tasks using App Clip. The user must have the possibility to use different App Clip’s services/features/geolocations and switch between them.

Limitations

  • App Clip’s weight should not exceed 10MB. That’s not a lot, and if we are talking about the possibility of adding App Clip to an existing project, it can be pretty difficult since the written application can already have some heavy-set libraries. For example, the third-party database library for iOS is already almost 10MB. Luna SDK frameworks weigh more than 100MB in total. Indeed, we may not link them with App Clip. But what if the customer initially wanted to see a specific feature that uses these libraries. Then it makes App Clips useless for this app.
  • There can only be one App Clip per application. If a client sells coffee and buns, then one App Clip should be used for a quick purchase. You cannot create a separate App Clip for the coffee and another different App Clip for the buns.
  • Sensitive data is not available in App Clips: Apple Music and Media, data from calendar, contacts, files, health, reminders, photos, fitness, etc.
  • It’s impossible to determine the geolocation (only with some exceptions).

The missing frameworks:

  • Background tasks;
  • CallKit;
  • CareKit;
  • CloudKit;
  • Contacts;
  • Core Motion;
  • EventKit;
  • File Provider;
  • HealthKit;
  • HomeKit;
  • Media Player;
  • Messages;
  • PhotoKit;
  • ResearchKit;
  • SensorKit;
  • Speech.

Not all is lost. At least we can confirm geolocation.

App Clips cannot use geolocation directly like the full version of the app can.

But if the processing of App Clip’s launch depends on geolocation, for example: buying coffee in a specific coffee shop on your street, instead of determining the actual location, App Clip can use an API to ensure that the user is in a specific region. In this case, the App Clip Card will mention that this App Clip can check your geoposition.

That is why there will be no usual “allow location access” popup, but the user can deny the location check right on this card before launching App Clip.

App Clip Card

The App Clip Card is set up via App Store Connect.

You can change the text on the blue button (it is indicated on the App Store Connect portal) just like the text on the card. This cannot be done any other way.

App Clip is uploaded on the App Store only along with the application. You cannot update the app or App Clip separately.

What are the possibilities?

- Reuse of the source code of the main application. This is not always possible since legacy projects may not use a modular approach in the application’s architecture, which makes the reuse of code in an inferior application impossible.

In this case, you will have to either refactor the application or create an App Clip from scratch.

- If we look under the hood, App Clip is launched using a regular URL. The parameters of such a URL can contain all the necessary information, such as the context (buying coffee or buns), coordinates/identifier/name of the place.

- Push notifications can be displayed for 8 hours.

- Apple Pay and Sign in with Apple can also be used.

You can write some data to the disk and transfer it during the installation of the main application. But if this App Clip isn’t used for a long time, the system can delete this data, and it will be lost forever.

App Clips are a great way to increase app conversions. Users can quickly pick up the parcel at the post office, queue up at an order pick-up spot in the store, or pay for parking in the mall without downloading or installing the main application.

— — —
Vladislav Sosiuk
iOS Developer at
Alty

--

--

--

NFT is an Educational Media House. Our mission is to bring the invaluable knowledge and experiences of experts from all over the world to the novice. To know more about us, visit https://www.nerdfortech.org/.

Recommended from Medium

Kim Hongmo Joined EdenLoop

AWS 6MB Lambda Payload Limit resolution in ASP.NET core 2.1

CREATE AN INSTANCE AND ATTACH VOLUME THROUGH AWS CLI

How To Do HTTP Request In Elm — Tentamen Software Testing Blog

The new data estate, a story of post Big data hype era in Cloud — part 1 The history

First Week of C321 MVC and REST

Calculate how long your SSD lasts Chia plotting

The quickest, easiest, and most effective agile retrospective ever

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Alty Inc.

Alty Inc.

We create custom functional applications for big companies. https://alty.co

More from Medium

Organising photos from iPhone’s shots on Swift vs Python

How to Create Your Own iOS Password Generator

Install xcodegen package on Mac with HomeBrew

How to install and run Swift on Linux