app提交上架最新流程 ios

2023-11-03

一、上架基本需求资料
1、苹果开发者账号(公司已有可以不用申请,需要开通开发者功能,每年 99 美元)

2、开发好的APP

二、证书
上架版本需要使用正式的证书

1、创建证书 Apple Developer

2、上传证书 Sign In - Apple

3、进入开发者中心 Certificates, Identifiers & Profiles 点击 Certificates 旁边的+ 新增证书

4、选择最新的分发版证书 Apple Distrbution,右上角 continue

5、按要求填写后提交。

一般都要创建两个证书一个用于开发,一个用于上架,如果有支付内容,还必需要 Apple Pay 的证书

6、创建 profile

左侧菜单选 profile 点+号创建,选择 App Store,创建好后获得一个 TYPE 为 App Store 的 Profiles, 可用于打包上架应用

上传app包文件到app store后台。

方法1.借助辅助工具appuploader,首先按照流程注册登录后,即可直接创建证书,通过hbuilder上传

创建ios(.p12)证书

1.点击苹果证

2.新增苹果证书

3.输入证书密码:这个密码不是账号密码,而是一个保护证书的密码,是p12文件的密码,此密码设置后没有其他地方可以找到,忘记了只能删除证书重新制作,所以请务必记住密码。还有为了安全起见,密码不要太简单。

证书名称是你为了在证书列表里面便于区别的一个字符,自己好辨识就可以,尽量是是字母和数字之类

  1. 选择证书类型: 带distribution的是发布类型,带development的是开发类型。apple类型=ios+mac,所以开发时选择ios app development和apple development 类型都是可以的

5. 选择bundle ID:只有部分类型的证书需要选择bundle id,例如推送证书。因为大部分证书是不和app关联的。而是通过描述文件profile文件关联app。

6. 使用appuploader服务同步:如果期望制作好证书后在其他电脑上同样可以下载到这个证书,或者和你同事同步此证书,则需要勾选使用appuploader服务同步。否则您需要手动管理p12文件在不同电脑之间的传输,并且一但创建下载后,无法在其他电脑下载,只能手动复制文件过去。一般情况下,推荐使用appuploader服务同步。

7. 证书类型说明:IOS开发选择apple development或者ios app development 类型

ios 发布选择 apple distribution或者 ios distribution (app store and ad hoc)

开发推送证书选择 apple push notification service ssl (sandbox)

发布推送证书选择 apple push notification service ssl (sandbox & production)

其他证书不是很常用,可以自行百度各种证书说明。

8.官遇到问题,首先登录文章开通的苹果开发官网。检查是否有权限/是否被停用/是否过期/是否有协议需要同意。在右上角切换账号检查所关联的账号是否功能正常。Apple邮箱会接收到许多通知消息,如IPA上传,账号发生变化,被停用,都会有消息提示。

9.上架版本需要使用正式的证书(apple distribution),开发测试用开发证书(apple development)

  1. 一般都要创建两个证书一个用于开发,一个用于上架,如果有支付内容,还必需要 Apple Pay 的证书。证书无需创建太多,apple对证书有数量限制,一般3个开发证书就不让创建更多同类型的证书了。
  2. 点击p12下载到电脑。

添加测试设备UDID

  1. 点击udid

     2.新增

创建描述文件

1.点击描述文件

2.点击新增描述文件,在弹出框里面选择要安装测试到的设备,如果是发布类型无需选择设备。选择使用的证书,如果忘记是哪个 了可以选择全部证书。

3.描述文件类型说明:带app store类型的是发布类型,带development的是开发类型,push没有描述文件,所以不要问推送选择哪种描述文件类型,os开发选择ios app development类型,发布app的时候选择app store类型。(ps:除了APP Store类型的描述文件外,其他的描述文件都需要选择测试设备)

4.点击下载按钮下载桌

测试安装App

1.以HBuilder打包Vue项目为例,打开详细设置进行设置完成后,点击保存。

2.官菜单项点击‘发行-> 云打包-打原生包’,出现如下图所示弹框,取消广告勾选,没有错误提示,选择刚才制作的p12和.mobileprovision文件,输入刚才设置的证书密码。点击打包,等待打包未完成(仅以ios为例)

3.官打包完成后点击确定“OK”按钮查看打包状态信息,打包完成后,保存安装包到目标文件,发送到手机端安装即可运行。

4.测试设备:如果选择的类型是ios app development 类型,则全部测试设备旁边必须有测试设备并且勾选上,如果没有显示测试设备,点击框框下面的添加测试,然后把测试设备的udid输入,把ios设备连接到当前pc,会自动获得设备的udid。 如果app编译后无法安装到设备,可能是因为设备的udid没有添加进入描述文件,则需要添加描述文件后重新编译。

方法2.Xcode上传,这里简单讲下步骤:

构建打包ipa文件

打包成功后,选择具体包版本,点击Distribute App。

选择App Store Connect。(Ad Hoc选项代表出包给测试人员测试)

点击next,后面几个步骤都点击Next按钮,选项配置不用管都按默认的走

最后点击Upload,就开始上传了,耐心等待。我大概6分钟就上传成功了(包文件如果大或者网速慢时间相对会比较长)。这是我上传成功的截图:

上传成功后,登录App Store Connect,进入app详情页面,点击顶部TestFlight,在构建版本中就可以看到你刚上传的版本,状态一般会显示正在处理

如果等了很久(10分钟左右吧)刷新页面还是没看到上传的构建版本,那么就是ipa包被拒绝了,这时候一般会收到拒绝原因的邮件。我就是这种情况���(包含过时的UIWebView),邮件如下:

解决问题,重新上传就行了。 最终上传构建的app版本状态显示为准备提交才能提交审核,状态从正在处理变为准备提交我等待了20分钟左右,这个时间是不固定的,看具体情况,类似那种几百兆的app,时间就会特别长。

选择APP版本,提交审核

登录App Store Connect,进入App详情页面,找到构建版本,然后选择一个最新提交的构建版

滑动页面到最顶部,点击存储,然后再点击右边的添加以供审核,确认相关信息后,就提审成功了。

接下来就是等待审核,苹果审核时间大多集中在晚上凌晨或者第二天早上6-8点, 顺利的话一般2天左右就有审核结果。

等了2天,“不出意外”,我提交的审核被无情的拒绝了:

这种情况没办法,只能根据实际情况去进行修改,或者做出必要的解释说明。被拒绝多次也是很常见的,反正耐心的去解决苹果提出的问题,最终都会通过审核的。

至此,iOS app上架app store流程就结束了

三、打包
1、版本配置,双击左侧菜单项目打开 xcodeproj,编辑 Version 或 build 第一次可以随意,但是提交版本成功后,这两个必须有一个值是新的,以作区分,否则提交上传就一定会被拒收

2、配置签名,选择 Signing&Capabilities

3、 然后是常规操作,设备选 Any Ios Device,Archive 后就是漫长的等待 一般为避免打包空间不够,可以先clean 一下

4、打包完成后,点击 Distribute App 上传到 App Store Connect,稍后 appid 邮箱会收到结果通知

四、审核
第一次提交审核时,这一步大多都会被拒绝,要求调整修改;这些要求都 会通过邮件发送,及时查看邮件并根据要求调整就好

常见的有

1、权限未申请或申请权限的提示文字不符合标准,在下面配置

2、使用了过期的 api,如 UIWebView

3、无法独立完成程序操作,如,支付集成了第三方,但是没有 apple pay的选项

4、权限未作详细说明

5、图标包含alpha通道

6、包内有framework未签名成功

……

如若遇到问题不会解决请私信或评论,无偿全部帮您解决

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

app提交上架最新流程 ios 的相关文章

随机推荐

  • parseInt()详解

    可能绝大多数学过js的就知道parseInt 函数 这里对小伙伴来说是有一个难点或者说是误区的 好吧 说的就是我 那就是在官方给的解释中我们能看到其中一个参数 radix 文中多次说他为基数 千万不要把它理解为要转换的进制 看上面的这些可能
  • docker 重启gitlab_Gitlab+CICD自动化部署Python项目

    使用CICD原理 当我们push项目到gitlab 就会触发 gitlab ci yml 文件 文件里面的 only maste表示 当push的分支为master则执行脚本 执行时通过tags shell选择已有的runner去执行 这时
  • 微信小程序——关于时间

    获取当前时间 var time new Date var year dateNow getFullYear var month dateNow getMonth 1 var day dateNow getDate var date year
  • 【2023最新版】Linux (WSL:Ubuntu22.04)安装Go1.20.6+Win11:安装Go1.20.6+GoLand2023.1.4+配置环境

    目录 一 Windows安装Go 1 下载地址 2 安装 3 配置Go环境变量 位置 默认添加的环境变量 修改环境变量 新建以下文件夹 检查 二 Linux WSL 安装Go 1 下载 2 解压缩 3 查看安装在系统上的Go版本 4 设置G
  • 《操作系统》- 操作系统的基本概念

    目录 一 操作系统的概念 1 1 操作系统的分类 1 2 计算机系统的构成 1 3 操作系统都做了哪些事 二 操作系统的目标和功能 2 1 操作系统的目标 2 2 操作系统的功能 三 操作系统的特征 3 1 并发 3 2 共享 3 3 虚拟
  • Java垃圾回收机制深入理解

    文章目录 一 简介 二 Java内存结构 三 什么是垃圾 四 垃圾收集算法 1 标记 清除算法 Mark and Sweep 2 复制算法 Copying 3 标记 整理算法 Mark and Compact 4 分代收集算法 Genera
  • 微软live服务器地址,在Mail中设置windows Live hotmail方法

    Mail是苹果系统的内置软件 是一款非常棒的软件 用起来很自然 起码和outlook比起来给人的感觉是这样 接下来是小编为大家收集的在Mail中设置windows Live hotmail方法 希望能帮到大家 在Mail中设置windows
  • c++ 在一行中输入若干个数,以空格间隔

    在一行中输入若干个数 以空格间隔 直到输入回车以结束 这是我在做PTA的题的时候发现回车输入逻辑有先后区别 题目如下 给出若干个正整数 请找出出现次数最多的数 输入格式 在一行中输入若干个数 以空格间隔 读入数的总个数不超过5000 输出格
  • ModuleNotFoundError: No module named ‘distutils.util 的解决方法

    ModuleNotFoundError No module named distutils util 的解决方法 使用 curl https bootstrap pypa io get pip py o get pip py sudo py
  • python轮胎缺陷检测_基于数字图像处理的轮胎缺陷检测

    摘要 随着汽车工业和道路交通运输业的迅猛发展 由于子午线轮胎具有胎面不容易变形 比较良好的稳定性 使用安全和耐用等特点 并且子午线轮胎的功能明显优越于普通斜交胎 其应用越来越普遍 已成为世界轮胎发展中的主要产品 但是子午线轮胎在制造过程中工
  • Navicat for mysql连接mysql时遇到的问题及其解决方法

    今天电脑重新装mysql 遇到了一个问题 authentication plugin caching 大概这样 懒得写了 找了好多教程 乱七八糟的就是解决不了 最后找到一篇博客https blog csdn net u011182575 a
  • 7. python爬虫——基于xpath爬取58同城房源信息

    python爬虫 基于xpath爬取58同城房源信息 1 需求 2 分析 3 代码 4 实现效果 1 需求 获取58同城上所有房源的标题信息 https bj 58 com ershoufang 2 分析 使用抓包工具进行分析 发现所有的房
  • vue2-element,vue3-element-plus 的列表翻页的序号

    前言 这里整理下 vue2 vue3中用饿了么框架的列表 序号随页增加的功能 vue2 page 当前页 pageSize 一页显示多少条 type index index indexMethod 序号翻页连续排序 indexMethod
  • 【踩坑笔记】从零开始在Linux和Windows部署安装kIash

    klash是一个基于规则的路由 可以为多地服务器之间配置特定的连接规则 加快后端业务响应速度 从零开始在Linux和Windows部署安装klash 一 材料准备 二 安装步骤 windows端 linux端 三 问题and踩坑 一 材料准
  • 敏捷开发流程

    一 敏捷起源 2001年2月 Martin Fowler Jim Highsmith等17位著名的软件开发专家齐聚在美国犹他州雪鸟滑雪圣地 举行了一次敏捷方法发起者和实践者的聚会 在这次会议上面 他们正式提出了Agile 敏捷开发 这个概念
  • 如何在php中获取curl请求的请求头信息及相应头信息

    1 获取请求头信息 可以在curl exec函数执行前 添加代码curl setopt ch CURLINFO HEADER OUT true 在curl exec函数执行后 通过 curl getinfo ch CURLINFO HEAD
  • dom模板列表-2

    模板列表
  • TensorRT 初探(1)—— conv2d:IConvolutionLayer

    tensorrt之conv2d计算详解 环境搭建 简介 代码 设置prepadding和postpadding prepadding postpadding与paddingNd冲突时 设置padding mode 总结 附录 环境搭建 环境
  • 浅谈JVM基本结构

    目录 1 JVM概念 2 JVM基本结构 3 JVM存储数据案例 1 JVM概念 JVM是Java Virtual Machine Java虚拟机 的缩写 JVM是一种用于计算设备的规范 它是一个虚构出来的计算机 是通过在实际的计算机上仿真
  • app提交上架最新流程 ios

    一 上架基本需求资料1 苹果开发者账号 公司已有可以不用申请 需要开通开发者功能 每年 99 美元 2 开发好的APP 二 证书上架版本需要使用正式的证书 1 创建证书 Apple Developer 2 上传证书 Sign In Appl