创建一个苹果小程序 App Clip 你该知道哪些事

前言 在 Xcode 工程中,你可以为你的 App 添加一个 app clip target, 利用 Xcode ,app clip 可以与你的 app 共享代码与资源,并可以编译,调试,运行在真机或者模拟器环境。但是,在实际使用过程中,开发者必须在自己的服务器上做好验证 app clip 的有效性的手段。
添加一个 App Clip Target

  1. 利用 Xcode 创建一个 iOS 工程
  2. 利用 App Clip template 为该 iOS 工程创建一个新的 Target
  3. 输入 App clip 的名称,以及为 app clip 选择合适的选项并点击完成
创建一个苹果小程序 App Clip 你该知道哪些事
文章图片

通过以上步骤,Xcode 会自动为你创建你所需的文件,为你的 app clip 的 Target 生成如下内容:
  • 一个用于你 app clip 编译,运行,测试的 scheme
  • 新的 capability
  • Parent Application Identifiers Entitlement.
  • App clip 的 bundleID
  • 供你测试 App clip 的环境变量 _XCAppClipURL
  • 支持设备调试
当创建完成后,在模拟器或者真机上运行 app clip, 看是否报错。
添加 Associated Domains Entitlement
  • App clip 可以通过用户传入的一个 URL(例如:扫码)来唤起
  • 用户可通过 app clip 传递给主 app 一个
    URL 的方式安装完整应用
【创建一个苹果小程序 App Clip 你该知道哪些事】要支持以上俩种调用方式,必须在 app 和 app clip 中加入 Associated Domains Entitlement:
  1. 打开工程设置,在 Associated Domains capability 中加入 the Associated Domains Entitlement
  2. 使用以下样式将其 domain 添加到 Associated Domains capability 功能中:appclips:.
添加代码与资源 为 App clip 编写代码逻辑和添加 asset 资源与正常开发 iOS App 没有什么区别,但是为了工程的可维护性,App clip 与完整的应用程序应该尽可能多的分享代码:
  • 如果你创建了一个新的 app, 并且带有 app clip 功能, 那么开发请遵循基于代码模块化的最佳实践,例如, 创建可重复使用的组件。
  • 如果为现有的 app 添加 app clip,建议先花点时间将代码重构为模块化,与 app clip 共享,避免代码重复
  • 在完整的应用程序与 app clip 中,Assets 资源共享
使用 Active Compilation Conditions 在 app clip 和完整应用之间共享代码时,可能会遇到无法在 app clip 中使用某些代码的情况。在这些情况下,请设置 Active Compilation Conditions ,在其中可以声明排除代码的条件。
创建一个苹果小程序 App Clip 你该知道哪些事
文章图片

在 app clip 的工程设置中找到 Active Compilation Conditions ,并为其添加一个值,例如:APPCLIP,然后在共享的代码中加入判读,示例如下:
#if !APPCLIP // Code you don't want to use in your app clip. #else // Code your app clip may access. #endif

服务器配置 在系统弹出 app clip 或允许 app clip 调用之前,系统会验证 app clip 的配置和调用的URL。如果无法执行验证,则不会显示app clip,也不会启动。为了使系统能够验证您的 app clip,您需要对你的 Web 服务器和 Xcode 项目进行配置:
  • 为你的服务器添加一个 Apple App Site Association 文件
  • 在 Apple App Site Association 文件中添加一个键值对,key 为 appclips,例如:
{ "appclips": { "apps": ["ABCED12345.com.example.MyApp.Clip"] } ... }

  • 打开 Xcode ,为 app 和 app clip 中的 Associated Domains Entitlement 配置服务器域名
在 App Store Connect 中注册 App Clip 系统使用您在 App Store Connect 中配置的 URL 来启动您的 app clip。因此,识别启动 app clip 的URL,在启动时对其进行响应并在 App Store Connect 中注册它们对于创建 app clip 至关重要。
发布 App Clip 准备发布 app clip 时,请将其作为 app archive 的一部分提交。请注意,必须通过App Store 审核,才能发布。
感兴趣的朋友可以关注我的技术公众号,每周都有优质技术文章推送,微信扫一扫下方二维码即可关注:
创建一个苹果小程序 App Clip 你该知道哪些事
文章图片

    推荐阅读