platform:ios,'11.0'target'SugarClip'douse_frameworks!pod'MinCloud',:git=>'https://github.com/ifanrx/hydrogen-ios-sdk.git'pod'Moya','~> 13.0'pod'SnapKit'pod'Kingfisher'endtarget'SugarDemo'douse_frameworks!pod'MinCloud',:git=>'https://github.com/ifanrx/hydrogen-ios-sdk.git'pod'SnapKit'pod'Kingfisher'end
添加完后,执行 pod install 安装安装好 MinCloud 后在工程中导入 MinCloud,打开 Sugar Clip 的 AppDelegate.swift 文件,在文件顶部添加 import MinCloud,并在 application (_: didFinishLaunchingWithOptions:) 方法内添加:func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey:Any]?)->Bool{//Override pointforcustomization after application launch.BaaS.register(clientID:"fdc4feb5403a985fe681")//注册 clientidBaaS.isDebug=true//是否打印日志returntrue}
获取产品数据Product 结构首先创建一个 Product 结构,用于表示产品信息struct Product: Decodable {public varid: String//产品idpublic var name: String?//产品名称public var participantCount:Int?//参与讨论人数public var coverImage: String?//封面图public var rating: Double?//产品评分public var brief: String?//产品简介public var description: String?//产品描述}
获取产品列表func loadProductList() {let table=Table(tableId:"105766")table.find { [weakself] (recordList, error)inifletlist:List<Product>=recordList?.listInfo.decoded() {self?.products=list.objectsself?.tableView.reloadData()//刷新产品列表}}}
Table 对应 MinCloud 的表结构,通过表 id 就可以操作对应表数据使用 find 操作来获取产品表所有产品记录,获取产品记录后,将其解码为 List<Product> 对象获取产品详情func loadProduct() {let table=Table(tableId:"105766")table.get(productId) { [weakself] (record, error)iniflet product: Product=record?.recordInfo.decoded() {self?.product=productself?.displaySubviews()//展示产品详细信息}}}
使用 get 操作指定产品的 id 获取产品的所有信息,获取产品记录后,将其解码为 Product 对象产品页面在项目中创建了 ProductCell、RatingLabel、BriefView 等视图控件,分别显示产品列表项、产品评分、产品简介等信息而这些控件可以在主 App 和 App Clip 复用因此在 SugarDemo 目录中创建了需要复用的组件,并将对应的文件的 Target Membership 中勾选 SugarDemo 和 SugarClip 即可复用唤醒 App Clip开发完 App Clip 后,我们可以点击 Smart app Banner,扫码二维码或 NFC 标签,点击 Siri 获取基于位置的建议,短信等方式来唤醒(invacation)App Clip在 AppClip 可以被唤醒之前需要配置 Launch Experience,即给 App Clip 配置一个 URL 和 App Clip Card 信息在开发阶段可以直接配置 Local Experience 或者在 testflight 上进行配置App Clip 准备发布时,需要在 app store connect 上进行配置本文主要介绍 Local Experience 方式,其他方式可参考苹果开发文档1. 首先将 SugarClip 通过 Xcode 在手机运行起来2. 打开手机【设置】-【开发者】-【Local Experience】-【Register Local Experience】填入 URL PREFIX,打开任何以 URL PREFIX 为前缀的 URL,都会被当做打开 App Clip 来处理填入 Clip Bundle Id填入 Title、Subtitle,选择一张图片,这些信息将会显示在 App Clip Card 上3. 步骤 2 的 URL PREFIX 编码成一个二维码(https://www.qr-code-generator.com/)4. 使用控制面板的二维码扫描器扫描,将会弹出 App Clip Card5. 点击查看,进入 App Clip至此,我们已经完成了一个 App Clip 的开发,可以对整个过程做一些总结:开发难度:App Clip 从技术选型上是面向 iOS 开发者的,对 iOS 开发者来说,开发 App Clip 可以简单到修改点配置即可发布而如果是小程序开发者想要入坑,有两条路可以走:学习 iOS 原生开发;等待跨端的框架适配 App Clip挑战:App Clip 现阶段只允许使用 Sign in with Apple 苹果登录、Apple Pay 苹果支付,无法集成微信登录、微信支付等线下服务场景主流的第三方能力这对想要使用 App Clip 优化线下服务体验来说是个挑战,毕竟国内开通了 Apple Pay 的不是多数希望 App Clip 团队早日推出更好的解法红利:App Clip 体验轻巧优秀,开发者可通过 App Clip 为主体 app 做一个试玩试用版本,让用户快速体验,以降低用户安装门槛,提高整体转化率通过这篇文章,希望你也能高效的开发一个 App Clip(图片来源网络,侵删)
0 评论