iOS之报错上架填坑iOS之开发配置iOS学习专题

【iOS】应用上线_全流程记录

2017-07-20  本文已影响203人  亲爱的大倩倩

1.申请开发者账号
2.生成发布证书
3.为你的某一项目,创建App IDs并绑定项目
4.添加真机测试设备
5-生成描述文件
6-构建APP
7-上线

申请公司AppleID
https://appleid.apple.com/account#!&page=create
申请邓白氏编码
https://developer.apple.com/programs/enroll/
申请开发者账号及生成证书
https://developer.apple.com

1-开发者账号申请流程

1.申请公司AppleID(请牢记你的安全问题答案,别问我怎么知道的)
2.申请邓白氏编码
3.苹果开发者官网去申请开发者账号

备注:

1.申请时有什么问题,苹果开发者客服电话是:4006 701 855
2.申请时需要填写公司网站,客服说网站必须一致可查,但你填写个兄弟公司的网站也可以申请成功

- 1.账号区别
- 2.申请AppleID
-3.申请邓白氏编码

隔了两小时之后,邮箱收到此封邮件


然后等待半个多月,邓白氏编码下来了

- 4.申请开发者账号

此时会弹出让你登陆AppleID



登陆后选择公司开发者账号



填写下面内容

填写完显示,确认无问题后点击submit


会提示注册正在处理中,等待即可


同时邮箱会收到提示,说正在处理,等待....

三天后,申请下来了, 点击Review now去付款即可

2-生成发布证书

1.certSigningRequest文件:不管创建什么证书,在这之前都需要先创建好certSigningRequest文件,但多个证书可以共用同一个certSigningRequest文件
2.开发者证书针对开发账号,一个开发者账号,申请一个发布证书就可以
3.这个证书下,可以绑定N个项目(就是N个App IDs)
3.每个项目对应着一个开发环境推送证书和一个生产环境推送证书
4.描述文件是打包上线的时候使用的,根据发布证书和你项目的App IDs去申请一个描述文件用于打包即可
描述文件和推送证书都必须在开发者证书创建好的基础上进行创建,描述文件和推送证书没有创建顺序,先创建谁都可以
5.P12文件,全部都是由证书导出来供别的电脑使用的
打包和开发的时候需要开发者证书,一般只有创建certSigningRequest文件的那台电脑可以直接打包,其他电脑想要打包都需要打包certSigningRequest文件的电脑生成p12文件进行授权

注意:

Xcode和Mac的OS X系统必须是官方正式版,非官方途径下载可能会携带病毒

打开钥匙串,工具栏选择钥匙串访问->证书助理->从证书颁发机构请求证书

打开苹果开发者中心,点击Account
点击:Certificates, Identifiers & Profiles

Certificates:证书,决定了哪台电脑开发项目
Identifiers:是项目的BundleID,具有唯一标示,添加多个项目即添加多个BundleID
Devices:是iPhone设备(测试机),只有被添加在这里的设备才能一直真机运行而不闪退
Provisioning Profiles:描述文件,这个最重要,是管理上面三个的,它可以决定哪些设备开发哪些项目,并指定某些测试机去测试


因为要发布到AppStore,所以创建生产证书


然后你会看到证书已经创建好了

点击Download下载证书,下载完在Finder中查看,.cer结尾的就是证书

因为有可能以后需要使用其他的电脑打包项目并提交AppStore发布,所以我们此时生成P12文件备用

双击.cer证书,然后去钥匙串中查看,找到这个证书

右键导出证书,此时需要设置密码

如果想在其它电脑上发布App,需要安装下面这个P12证书


再打开Certificates会看到已经多了你刚生成的证书

3-为你的某一项目,创建App IDs并绑定项目

有两项是默认选中的,不用管
因为要做推送,所以我勾选了Push Notifications,这个也可以后期加

确认无误后点击Done即可


打开Xcode,配置发布证书


但上面这样会出现下面的问题


改成下图

配置Identity和Signing
注意: Team是需要自己添加上公司开发者账号的,添加上之后,公司的选项就会出来

image.png

配置成功


4.添加真机测试设备

找到Devices,点击All,然后点击右上角 + 号

手机连接iTunes,点击序列号即可得到UDID,右键拷贝

然后就可以真机运行了,不会出现无证书下真机运行闪退的现象
若想给公司其他人装,在开发者账号的Device里面添加即可

5-生成描述文件

描述文件的作用就是把证书和Bundle Identifier关联起来
找到Provisioning Profiles ,点击All,然后点击右上角 + 号

选择你刚刚创建的App ID


选择你刚刚创建的发布证书

输入PP文件的名字

Download生成的PP文件,然后点击Done

找到文件并双击安装一下就行了(无效果)



点击Edit,重新generate一下就行了

6-构建APP

https://itunesconnect.apple.com/

套装ID是选择项,选择你的BundleID对应的即可
SKU不知什么意思,我填的bundle Id后几位


第一次创建应用是上面的步骤,但如果是发布已有应用的新版,则需要
进入你当前的版本,添加一个新版本

进来之后填写好这两项的信息


其中名字或其他若需要变化,取消存储更改即可

点击1.0准备提交


先上传图片,iPhone需要5.5/4.7/4/3.5尺寸的图片
因为3.5基本没有了,所以用4寸的图片


| 5.5 | 4.7 | 4 |
|: -------------:|:-------------:| :-----:|
| 6P | 6| 5 |
|7P | 7 | 5c/5s |
获取图片的办法:
在模拟器中运行,选择Command + 1,将模拟器弄成100%,然后command + s即会将图片保存在桌面上
若模拟器不能运行,真机运行截图后,点击图片上的分享,打开蓝牙,用AirDriop分享至电脑
用QQ发送图片的时候,不能直接拖拽图片进去发送,会失真,已文件的形式发送才行

然后拖入相应的位置即可
如果尺寸不对,是拖不进去的

然后填写App简介


填写App综合信息

图标尺寸是1024 * 1024
版权信息填写公司名字即可
下面的姓名地址电话邮件填写自己的即可

其中电话前面要加区号和空格


填写审核信息

自动发布: 审核完直接发布App Store
手动发布: 审核完不直接发布,等我们手动点击再去发布,手动发布能保证和PC端完全统一
此时基本信息填完后,先保存,然后再上传项目

7-上线

打开项目,进行项目配置

基本信息


最低支持版本和横竖屏


去掉断点

设置Analyze下为Realease模式
1.Analyze一定是Realease模式
2.Run默认是Debug模式,但要自己测试可以手动更改
Debug 是测试环境下,包比较大,会有很多 log 等内容,而 release 是纯上线的包

选择Archive
Archive专门用于传项目打包项目



注意这里要选这个才可以Archive


这里的1.0是版本号,会显示在AppStore中
1是程序构建版本号,第一次上传是1,以后每次上传依次累加


提交时有两种方式

方法1:

选择Upload to App Store

依次选择证书及相对应的描述文件



然后Upload

方法2

1-点击Export 按钮,选第一个, Next
2-确认是公司账号,确认描述文件
3-按提示保存至桌面即可,你会发现桌面文件夹下面是个 ipa 包
4-然后回到 XCode,点击 XCode 下Open Developer Tool,打开 Application Loader
5-输入开发者账号进入后,打开你桌面的那个文件,一直点击下一步即可
6-等十几分钟成功后,去 itunesContent,构建版本后面会有一个加号,点击加号,若显示出你刚提交的版本,提交即可

提交完成

然后我们回到iTunes Connect中,等几分钟
若这里出现加号,选择我们刚刚上传的版本即可


点击右上角的提交以供审核


均选否即可


然后等待审核即可


遇到的问题
Code signing is required for product type 'Application' in SDK 'iOS 10.3'
解决办法为:

只在Development Team那里选择公司即可


导致的原因不明,可能是网络原因

解决办法:

1.多试几次
2.提交时用方法2进行提交


1.先在网站上撤回原来的,在最上面的remove那个即可,会提示你被你拒绝


2.重新Archive,但注意要将build加一
3.再进网站将原来的版本删掉就行,等着新的成功后,构建新的版本

今天提交了N次版本,都成功,结果都等了好久好久构建版本这里就是不出现加号



而且在活动里面也不出现我构建过的版本



上网查原因,说有可能是有私有API,这种苹果会给你发邮件,但是并没给我发
还有一种说是必须要在plist文件中添加权限说明,并且你添加的格式要正确(不能有空格 后面必须有文字说明)
* 麦克风权限:Privacy - Microphone Usage Description 是否允许此App使用你的麦克风?

* 相机权限: Privacy - Camera Usage Description 是否允许此App使用你的相机?

* 相册权限: Privacy - Photo Library Usage Description 是否允许此App访问你的媒体资料库?

通讯录权限: Privacy - Contacts Usage Description 是否允许此App访问你的通讯录?

蓝牙权限:Privacy - Bluetooth Peripheral Usage Description 是否允许此App使用蓝牙?

语音转文字权限:Privacy - Speech Recognition Usage Description 是否允许此App使用语音识别?

日历权限:Privacy - Calendars Usage Description 是否允许此App使用日历?

定位权限:Privacy - Location When In Use Usage Description 我们需要通过您的地理位置信息获取您周边的相关数据

定位权限: Privacy - Location Always Usage Description 我们需要通过您的地理位置信息获取您周边的相关数据

然后,终于成功了!!!


这里也有了


上一篇 下一篇

猜你喜欢

热点阅读