美文网首页
Appclip初窥

Appclip初窥

作者: fruitymoon | 来源:发表于2020-07-02 11:51 被阅读0次

    简介

    appclip是一个用户需要时才由系统触发下载的native小程序

    appclip关联宿主App,但没有宿主app也可以运行

    Appclip experience是打开链接后用户看到弹起的小卡片,是开启appClip的入口,初次下载后可以通过用户界面上的对应icon再次打开。一个appclip可以有多个appclip experience

    三者之间的关系

    用户使用时通过各种途径比如NFC或扫码获取到url,Appclip experience会拉起一个小卡片,用户点击Open后触发appclip下载并启动,通过NSUserActivity获取到url,在appclip里路由到指定页面。

    启动流程

    唤起applicp入口:NFC、二维码、AppclipCode、苹果地图上的链接、Siri附近推荐、Safari链接、短信里的链接(微信链接应该需要跳转到safari打开)

    Appclip Code:

    appclip的一个优势是可以将宿主app入口比较深的模块立即暴露给用户在最需要的时机打开。对于宿主app,启动入口更多了;对于功能模块来说,在用户手机上有自己的固定入口,曝光机会更多,用户触达路径更短了

    开发appclip

    其实和开发一个app类似,尽量重用宿主app里已有代码

    app工程里新增一个appclip target,asset和文件加到appclip target,添加相关依赖库

    不支持的库: CallKit, CareKit, CloudKit, HealthKit, HomeKit, ResearchKit, SensorKit, and Speech

    Link appclip三部曲
    image
    1. 配置web服务器和appclip
    image

    跟添加webcredential自动填充密码的步骤类似,webServer根路径要放一个文件,key为“appclip”,value加上appclip的bundle id。

    image

    从NSUserActivity拿到url,解析后跳转对应页面,如果用户已安装宿主app,系统会打开宿主app,所以宿主里也需要保证有相应跳转逻辑。可参考https://developer.apple.com/videos/play/wwdc2019/717

    image

    添加test url 测试appclip

    image
    2. 配置appclip卡片体验和appstore
    image

    如果想在safari和message以外入口打开,比如NFC,一定要设置下面这个高级体验

    image

    一个appclip可以设置n个url,每个url对应一个appclip experience,有自己的icon;也可以通过prefix后加各种query来拓展一个appclip experience,在appclip代码里路由到不同业务逻辑

    image

    相关设置,可以把弹窗和真实地址关联

    image
    3. 配置smart appclip banner

    也就是网页里拉起appclip experience的入口,添加网页标签即可,仅限Safari

    image

    default和advanced experience

    image

    总结

    • Appclip是一个即用即走的native小程序,专门用于某个特定使用场景,需要和app一起提交审核

    • 和宿主app互斥,如果用户已安装宿主app,则不会触发appclip的下载,而是直接由appclip experience打开宿主app;如果安装appclip后再安装宿主app,appclip会自动卸载

    • 由于appclip触发时机就是用户最需要的时候,appclip应该尽可能小,来保证快速下载和迅速启动,所以大小有10MB限制,但可以开启appclip后下载其他需要的资源

    • 支持applePay、notification、登录等几乎所有宿主app能力,用户隐私(比如健康数据)和一些系统库受限

    • 解析二维码或苹果码得到url,对应一个appclip experience,在appstore配置好后,系统解析到对应url,会弹出对应appclip experience,用户点击open后,自动下载app clip的二进制文件运行

    • appclip下载后,会在用户手机界面保留appclip experience图标,可以再次打开,appclip几天不用会卸载,所以只能作为cache存储数据

    • 可以通过SKOverLay引导用户下载宿主app

    • 可以和app共享数据、权限,安装app后用户隐私权限自动迁移到宿主App,放在group container里的用户数据会自动迁移到app,group container外的数据会随app clip卸载丢失

    Reference

    demo:https://developer.apple.com/documentation/swiftui/fruta_building_a_feature-rich_app_with_swiftui

    https://developer.apple.com/videos/play/wwdc2020/10174

    https://developer.apple.com/videos/play/wwdc2020/10146

    https://developer.apple.com/videos/play/wwdc2020/10118

    https://developer.apple.com/videos/play/wwdc2020/10172

    https://developer.apple.com/documentation/app_clips/creating_an_app_clip

    https://developer.apple.com/documentation/app_clips/developing_a_great_app_clip

    相关文章

      网友评论

          本文标题:Appclip初窥

          本文链接:https://www.haomeiwen.com/subject/mnwlqktx.html