Implementation: Distribution of native code, native framework and Native APP

In terms of implementation, Clip is the same as the native app. Support both UIKit and SwiftUI on the UI framework. Some developers think that only SwiftUI can be developed, which is wrong. The positioning of Clip is similar to watch App and App Extension. It is a separate target in the same project with app. However, Clip does not have its own proprietary framework (in fact, there is one, but it mainly contains some feature apis). It uses the same framework as App, and can be considered a simplified version of native app.

Product positioning: Disposable

Within easy reach

The Clip setting is strictly limited

  • NFC
  • Qr code
  • Clip-associated web page in Safari
  • Apple Messaging app
  • Siri nearby suggestions and Apple Maps

The entrance of NFC and QR code is easy to understand. Users must take out their mobile phone and open the camera to scan the NFC. Apple’s exclusive Clip generation tool won’t be available until the end of the year.

Siri nearby suggestions and Apple Maps (clip locations can be configured in Connect). The scene is similar to the previous QR code. If I see a merchant on the map and the merchant has a Clip offering services, I can directly open the Clip in the map or Siri suggestion.

Access can only be initiated by users

No installation or uninstallation is required

Because the Clip size is limited to less than 10MB, it can be opened quickly in the current network state. In order to make the user feel very easy to use, the UI does not display the words “install”, but directly “open”. The expected scenario in which the user opens a Clip is similar to opening a web page. So there is no installation or uninstallation from the user’s point of view. The operating system takes over the life cycle of the Clip. If a user does not use the Clip after a period of time, the operating system automatically deletes the Clip and all data stored in the Clip. Thus, while Clip provides storage capabilities, programs should not rely on stored data. The stored data should be used only as a cache, and the operating system may automatically purge the cached data.

Horizontal comparison: PWA, Instant Apps, applets

Instant Apps

The Android Instant Apps officially released in 2018 and Clip are technically the closest. Instant apps is translated into “installation-free apps” in Chinese. In terms of experience, users are expected to use the app at the lowest cost, so that users do not feel the installation step. Instant Apps can also be identified by deep link (URL). If you search for the application website in Chrome, Chrome can directly open the application if it identifies an associated application under the domain name. Links in messages can also be identified. However, Instant Apps was released early, and foreign users did not have the habit of using TWO-DIMENSIONAL code, so two-dimensional code and NFC were not supported on the entrance. The fundamental difference between the two is in positioning. The scenario proposed by Instant Apps is to provide a trial version of an APP. Therefore, the scenario is that you have reached the download page of the app. At this time, if an app is hundreds of megabytes, you may give up downloading, but there is a minimal trial version, which will improve your chances of using the app. This scenario is especially obvious in game apps. On the one hand, high-quality game apps are relatively large in size. On the other hand, if the app is a paid download, a free trial version can also increase users’ download possibilities. Many apps in the Apple Ecosystem offer a limited free Lite version with the same requirements. But Instant apps have made no impact in China. Due to policy reasons, Google Play is not supported in the domestic market. The Domestic Android application market is also mixed, and it is estimated that there is no unified support for Instant apps. In addition, the Android ecosystem in China is quite different from that in Europe and The United States. There are few charging apps in the early Android market, and there are few scenes for users to try free apps. There is also the possibility of a special version of the app, which can be installed using dynamic technology to deliver code, and the size of the app can be controlled under 10 MB. Clip is a very specific offline service scenario, and the application capability can be connected with Sign in with Apple and Apple Pay. Such a brand new user can quickly use offline services and make registration and payment. The user experience will be much better. Due to the domestic ecological reasons, android manufacturers do not have a unified interface for new users to register quickly, nor a unified payment interface, so it is difficult to provide comparable experience. If developers develop it individually for each vendor, it is no longer a “mini-program” in terms of cost.

Progressive Web App(PWA)

Progressive Web App is a Web-based technology. After the rise of the mobile Internet, everyone’s traffic has shifted to mobile devices. However, the Web experience on mobile is not great. So the W3C and Google developed a protocol based on the capabilities of the browser to make Web apps have more native capabilities.

PWA is not a single technology, but a Web App that applies multiple technologies. Its core technologies include App Manifest, Service Worker and Web Push.

PWA is the equivalent of downloading the code in the applets directly to the local, there is a separate app entry. Run based on browser-based capabilities. But the user experience is the same as the native app. I personally have a soft spot for PWA technology, which has the same good intentions as the original Internet. Hopefully, after the underlying set of protocols, the user experience is still the Internet without boundaries. But times have changed. PWA is basically cold in China. The PWA was born with a chip on its shoulder, and while Google wants a web standard to run on mobile devices, it’s not important to Apple’s business strategy. So it took a few years for a PWA protocol to come out and support this feature on mobile devices (iOS). And for mobile users, having a nice Web app is not their pain point. In summary, PWA looks good, but it seems to be more of a good vision for web developers. In the implementation of a lot of practical problems, technical support is not good, developers have no motivation to do software ecology on this technology.

Wechat applets

As mentioned earlier, mini programs are very similar to Clip in terms of product concept. Maybe Clip is even inspired by mini programs. In the market, mini programs are the real competitors of Clip. The mini program is based on wechat app, and the Clip is based on the operating system. Therefore, Clip has advantages in capability. The entry of the mini program requires opening wechat first, while Clip can directly activate the application through NFC proximity. For developers, Clip provides direct access to many native capabilities (such as push), and users can download their native apps if they like. In the small program, wechat developers cannot directly jump to their own app for commercial reasons, and the ability of the small program also depends on the interface provided by wechat. Apple attaches great importance to associating the main app from Clip and provides several entrances to display the associated app. The clip presentation page will first display:

But if you don’t have your own standalone app, you’re left with applets. Now the development of small programs is more than the first proposed offline services, but similar to Instant apps, more like a lightweight APP. Considering that many domestic small program manufacturers do not have their own independent app, Clip is not attractive to this group. However, for offline services, especially for payment scenarios, Clip provides a better user experience than applets. In conclusion, a small part of the business scenarios of Clip and the applet overlap, and the applet covers more scenarios. Most of the time, the two are not mutually exclusive, and even when Clip has the technical advantage in some cases, merchants will not give up the applets because there are still Android users. It still depends on whether businesses are willing to provide users with a better way to interact in certain scenarios.

Compare the technical limitations of native apps

While Clip can be used directly with the iOS framework, Apple has some limitations compared to native apps because it is used in a first-time, brief, in-the-moment experience for new users. App cannot access user’s private information:

  • Sports and fitness data
  • Apple Music and multimedia files
  • Address book, information, photos, documents and other data

However, in order to provide users with a lighter experience, the clip-free notification and location permissions are specially designed for users. But there are limitations: the waiver is only valid for eight hours. The location can only be retrieved once. If the app needs to use these two types of permissions heavily, you can apply for them in the popover as before. Some advanced application capabilities are also limited and need to be used in a full application:

  • Tracking authorization cannot be requested
  • Background request task cannot be performed
  • The Bluetooth connection will be disconnected if it is not active

In general, there are some limitations, but they are based on the need for developers to focus on the correct use of the Clip. The capabilities provided by Apple are perfectly adequate for the use scenarios advocated by Clip.

Some technical details

You can create a shared Targets Asset Catalog to share image resources.

conclusion

The keywords of Clip defined by Apple are lightweight, native, fast, focused, and in-the-moment experience. Clip provides a fairly good user experience in specific offline scenarios. For companies that already have a separate app, the cost of developing a Clip app is not high. I personally hope that such a good technology can be adopted by more developers and provide a better experience for users. For small programs, the clip scenario is much narrower and the two are not in direct competition. I prefer to see it as a supplement to the lack of native capabilities of small programs in certain scenarios.