用APICloud开发iOS App Clip详细教程
App Clip是苹果公司在WWDC20开发者大会上发布的新功能,用户可以只访问应用程序的一小部分,而无需下载整个应用,被称为苹果小程序。本文主要介绍如何通过APICloud开发App Clip。
一 创建应用
在APICloud上创建App Clip有两种方式,一种可以在登录APICloud后,进入开发控制台进行创建,如下图,另外也可以在开发工具APICloud Studio3中创建。
在APICloud Studio3中创建:
二 开发调试
App Clip 使⽤和主应⽤⼀样的 APICloud 开发技术,其开发流程和主应⽤也基本⼀致,⽀持使⽤官⽅AppLoader 或者⾃定义 Loader 进⾏ WiFi 代码同步预览,或者云编译进⾏查看。
三 准备编译证书:
在编译安装 App Clip 应⽤之前,需要在控制台“证书”⻚⾯上传编译证书。对于 p12 证书,共⽤主应⽤的p12 即可,App Clip 应⽤的包名由主应⽤的包名 + ⾃定义字符串组成,例如主应⽤包名为com.api.demo,则 App Clip 的包名可以为 com.api.demo.clip,参考创建 App ID,然后再⽤创建好的包名制作 mobileprovision 证书。
⼀般需要分别准备测试证书和正式证书,测试证书⽤于开发阶段安装调试,正式证书则⽤于最终发布到App Store。
四 安装启动App Clip
选择测试证书编译后,就可以直接扫描⼆维码进⾏安装。App Clip 应⽤安装后在⼿机主屏幕上不会显示应⽤图标,因此第⼀次安装后⽆法通过主屏幕启动应⽤,此时有下⾯两种⽅式进⾏处理。
1、 配置 App Clips 本地体验,扫描⼆维码启动
为⽅便开发者测试 App Clip,苹果在 iOS 14 系统⼿机的设置⾥⾯提供了 App Clip 本地体验配置,打开设置 - 开发者 - Local Experiences - Register Local Experience,输⼊要关联的 url 地址,App Clip 的包名,展示在卡⽚上⾯的标题、副标题、图⽚等信息,保存。
为上⼀步关联的 url ⽣成⼀个⼆维码,然后启动⼿机控制中⼼的⼆维码扫描器,扫描⽣成的⼆维码后就会打开⼀个卡⽚,卡⽚上⾯展示了上⼀步配置的信息,点查看或者打开按钮即可打开安装的 App Clip 应⽤。打开过⼀次后⼿机桌⾯的 App 资源库⾥⾯就能找到最近使⽤的 App Clip 应⽤,下次就可以通过 App资源库来打开。
2、 在桌⾯显示应⽤图标
如果觉得上⾯那样配置信息⽐较麻烦,也可以在 config.xml ⾥⾯配置显示应⽤图标,这样就可以直接点图标启动,配置⽅式:
<preference name="launcher" value="true" />
五 发布应用
App Clip 应⽤不能单独发布,它需要和主应⽤⼀起提交 AppStore 审核。在APICloud后台使⽤ AppStore 类型证书编译主应⽤的时候,可以选择关联的 App Clip 应⽤,编译出来的 ipa 包⾥⾯同时包含了主应⽤和 App Clip 应⽤。
上传包含 App Clip 的 ipa 到 App Store Connect 后,才能在 App Store Connect ⽹站上⾯设置 App Clip相关体验信息,如⽣成轻 App 码、关联地点等,详细信息参考苹果官⽅设置轻 App体验帮助⽂档。
以上就是使用APICloud创建和发布 App Clip(苹果小程序)的方法,APICloud还支持使用AVM.JS技术开发多终端应用,一次开发同时生成Android、iOS App,微信小程序、HTML5等多端应用,欢迎体验交流。
用APICloud开发iOS App Clip详细教程的更多相关文章
- ios app真机测试到上架App Store详细教程-必看
详细操作地址 http://www.applicationloader.net/blog/zh/88.html 苹果iOS APP真机调试测试和上架App Store视频教程 优酷 http://v. ...
- 下载历史版本App超详细教程
有些时候我们需要下载旧版本的 App 进行研究或者其他用途,然而在 iOS 下,苹果的 App Store 里面默认只能下载最新版本的 App,对滴,就是这么任性,不服不行.然而在 Android 里 ...
- phonegap 2.7 ios配置安装详细教程(2.9通用)
原地址:http://www.cnblogs.com/yansi/archive/2013/05/14/3078222.html 在移动开发日益激烈的情况下我也不得不硬着头皮尝试下新鲜的html5的a ...
- 微信app支付详细教程
微信支付作为三大支付之一,越来越多的客户要求产品中添加微信支付 但是网上能找到可用的demo很少 所以写一篇自己写微信支付的过程,希望能给有需要的开发者一点帮助. 下面让我们来进入正题 1准备工作 ...
- 使用Html5+C#+微信 开发移动端游戏详细教程: (四)游戏中层的概念与设计
众所周知,网站的前端页面结构一般是由div组成,父div包涵子div,子div包涵各种标签和项, 同理,游戏中我们也将若干游戏模块拆分成层,在后续的代码维护和游戏程序逻辑中将更加清晰和便于控制. We ...
- 使用Html5+C#+微信 开发移动端游戏详细教程 :(三)使用html5引擎搭建游戏框架
教程里的案例我们是通过H5游戏引擎开发,目前H5的游戏引擎比较好用的是白鹭,不过对于新手来说白鹭的开发环境和工具使用过于复杂,这里推荐一个国内大神编写的游戏引擎:lufylegend. 直接在页面引入 ...
- 使用Html5+C#+微信 开发移动端游戏详细教程 :(一)序(关于作者创业失败的感想)
说起梦想,我清楚的记得2012年7月初毕业,拿到毕业证书的那天果断买好了次日南下去深圳的绿皮火车票,500多块,26个小时车程.第二天就拖上行李到了深圳. 一开始的想法仅仅是过去想见见世面,学习点新技 ...
- cordova 开发 ios app 简要流程
1 安装node.js环境 官网: http://nodejs.org/ 点击[install],会下载mac的安装包.正常安装即可 2 安装cordova:npm install -g cordo ...
- 使用Html5+C#+微信 开发移动端游戏详细教程:(六)游戏界面布局与性能优化
本篇教程我们主要讲解在游戏界面上的布局一般遵循哪些原则和一些性能优化的通用方法. 接着教程(五),我们通过Loading类一次性加载了全部图像素材,现在要把我们所用到的素材变成图片对象显示在界面上,由 ...
随机推荐
- Web服务器-正则表达式-整理+复习(3.1.1)
@ 目录 1.常用api 2.例子 3.正则表达式模式 关于作者 参考文章 1.常用api re.match(pattern, string, flags=0) pattern 匹配的正则表达式 st ...
- linux里用户权限:~$,/$,~#,/#的区别与含义
$表明是非root用户登录,#表示是root用户登录,它们是终端shell的命令提示符几种常用终端的命令提示符 BASH: root账户: # ,非root账户: $KSH: root账户: # ...
- css做keylogger
下载keylogger:https://github.com/maxchehab/css-keylogging 参考讲解:https://blog.csdn.net/weixin_34138139/a ...
- Open_basedir绕过
Open_basedir绕过 一.基础知识 open_basedir是php.ini中的一个配置选项,它可将用户访问文件的活动范围限制在指定的区域, 假设open_basedir=/home/wwwr ...
- Python常用配置文件ini、json、yaml读写总结
开发项目时,为了维护一些经常需要变更的数据,比如数据库的连接信息.请求的url.测试数据等,需要将这些数据写入配置文件,将数据和代码分离,只需要修改配置文件的参数,就可以快速完成环境的切换或者测试数据 ...
- alibaba-sentinel-1.8变化
maven最新坐标 <dependencies> <dependency> <groupId>org.springframework.boot</groupI ...
- 01. Consul 入门
简介 Consul 是 HashiCorp 公司推出的开源工具,用于实现分布式系统的服务发现与配置.与其他分布式服务注册与发现的方案,Consul的方案更"一站式",内置了服务注册 ...
- Quatz JobListener和TriggerListener
myJob:triggerFired... vetoJobExecution class coder.rdf.mybatis.study.JobTest:jobToBeExecuted... test ...
- 动态SQL基本语句用法
1.if语句 如果empno不为空,则在WHERE参数后加上AND empno = #{empno},这里有1=1所以即使empno为null,WHERE后面也不会报错. 映射文件 <selec ...
- [leetcode33Search in Rotated Sorted Array]在排序旋转后序列中找目标值
直接上代码 /** * Created by lvhao on 2017/6/30. * Suppose an array sorted in ascending order is rotated a ...