1:项目配置
1:General
1)首先Bundle Identifier 必须设置,这个和你Itunes Connect里面新建应用里用到的保持一致,还有请求的证书也必须一致。
2)接下来是Version以及Build ,如果第一次上传,没什么要求一般Version:1.0 Build :1
如果之前有成功上传过,那么这里有两种情况 一是要更新一个新版本那么直接增加Version的值就行 二是不想改变版本号,只是想再重新传一个版本,那么改变Build的值就行
3)现在Xcode8更新以后General里面Signing有了一个Automatically manage siging属性
首先真机测试的时候我会把他勾选上,很方便,但是打包的时候我会去掉勾选,用从AppStore申请下来的发布证书
2:Capabilities
1)这里主要是项目中应用到的功能需要打开
如果项目中用到推送,不管是集成极光还是百度或者自己写的推送都需要打开Push Notifications开关,这里很重要,如果你项目中用到技术而这里没有打开开关,那么你打包并没有问题,但是上传AppStore会报错
3:Build Setting
1:Architectures
这里的Architectures必须得支持arm64不然提交应用会报错
2:Enable Bitcode
他的值要设置为NO
3:Linking中的Other Linking Flags
如果你项目中有提示链接报错,那么你可以将其值设置为-all_load
4:Signing
如果是真机测试的话,勾选了自动管理证书基本不用做操作,如果是打包上传应用的时候,在General里面先选好Team以及证书,这里将Provisioning Profile设置为你下载下来的配置证书的名字,code Signing Identify设置为你的Iphone Distribution
4:Build Phases
1:首先Copy Bundle Resources
这里如果有xxx.bundle,最好将其删除掉,我之前项目是Unity导出的,这里有一个Xlua.bundle然后我打包好上传的时候每次都报同样的错误 Do not contain a file.最后将这里面的.bundle文件删除后成功
2:Link Binary With Libraries:
一般来说这里基本不会有问题,导入第三方的东西时一般要加一些framework,这里官方文档上都有说明要导入那些库
5:info.plist
1:App Transport Security Setting
这个是打开苹果支持Http的,现在苹果要求使用https,项目中如果不加这个属性,并且用到了http链接就会报错
2:Privacy - Camera.......
这里有一系列的属性
这里感觉是最坑的,举个例子,如果项目中调用了相机或者图库,然而你没在pilst文件中加对应的隐私属性,那么你打包没问题,上传应用没问题,但itunes Connect里面根本找不到你上传的版本。这里罗列一下隐私属性
NSContactsUsageDescription -> 通讯录
NSMicrophoneUsageDescription -> 麦克风
NSPhotoLibraryUsageDescription -> 相册
NSCameraUsageDescription -> 相机
NSLocationAlwaysUsageDescription -> 地理位置
NSLocationWhenInUseUsageDescription -> 地理位置
Privacy - Bluetooth Peripheral Usage Description -> 蓝牙权限
Privacy - Speech Recognition Usage Description -> 语音转文字权限
Privacy - Calendars Usage Description -> 日历权限
Privacy - Contacts Usage Description -> 通讯录权限
2:itunes Connect应用配置
1:App信息:
这里有个隐藏的坑点:隐私政策网址(URL)
有大部分人看到可不填就觉得可以忽略,其实不然,这个还是很有用的,最近遇到了一个关于它的问题,首先项目注册是时候如果有获取用户信息并展示出来的功能,如:全球排行榜,那么我们就需要用户同意我们的隐私条款,那么这里就需要填了,这里的网址填写我们的展示隐私政策是网址。
简便方法:我在简书中写了篇关于隐私政策的文章,然后把链接放上去,然后过了,哈哈
2:技术支持网址(URL)
这里最开始之前写百度都能过,但现在不行了,最好填写公司的网址,至少包含两点。
1:应用的介绍
2:联系方式
3:分级
如果含有赌博信息的,那么必须得17+,这个还是如实填写