2017.09.04 更新-----------------------------------------------------------------------------------------
这个时候我已经更换了新版本的Xcode 8.0+ 了,
在上传ipa 到 iTunes 的时候出现了问题 "二进制文件无效"
ERROR ITMS-90168: "The binary you uploaded was invalid."
首先声明,
1.工程无私有API
2.工程 Schemes的Analyze和Archive已经是release模式

3.使用的是开发者生产证书,配置文件是发布到App Store 的配置文件,一切正常
然而打包还是二进制文件失败
可恶.....

经过排除问题之后居然是由于 Application Loader 的版本问题.... (好可恶...浪费了太多时间)
需要用最新的3.6版本才能上传 ,3.0 版本会显示二进制文件失效
然而 苹果官网上给的链接还是3.0 版本的(掩面而泣...)
Xcode8自带的就是3.6版本的Application loader
Xcode->Open DeveloperTool->Application loader

这个坑我踩了.... 记录一下... 太年轻
参考自
http://blog.csdn.net/u013935547/article/details/53032760
--------------------华丽的分割线-----------------------
首先你要有一个没有明显BUG,错误的ios Xcode Project
然后现在你想把他打包成为ipa 然后上传到AppStore .
那就开始吧.
首先登陆苹果的开发者网站 的Account
步骤:
1.先创建 生产证书 iOS Distribution Certificates
2.创建 App ID
3.生成描述文件
1.创建 生产证书 iOS Distribution Certificates


继续 continue

告诉你需要CSR文件
继续 continue
你就会看到这个页面

要你选择 CSR文件,这个是个什么鬼呢,其实就是私钥了(每一台苹果电脑上的都会有的)
苹果需要一个私钥和他官网上的公钥配置在一起才能产生这个生产证书



然后就回到网站上去 choose File
然后就下载下来

安装的时候记得选登录.
这里是有必要进行说明的
一个开发者账号只能创建(1-2个开发(测试)证书,2-3个生产(发布)证书),如果你的App Store Ad Hoc 前面的按钮不能选择,则代表你的这个账号无法再创建新的生产证书了。如果要多人使用的话就只能生成 p12 文件 然后拷贝到别的Mac电脑上去安装,这样别的电脑才能使用它 获取描述文件及其他操作.
生产p12 文件的方法也是很简单的.
直接导出就行了

然后创建个APP ID 先创建着之后会用到


然后就 Register
然后点击生成描述文件





点击继续 continue ,然后下载下来,打开对应的应用工程 ,双击描述文件,它会自动注册到你的ios工程里面去
然后配置 code signing
2017.09.04 更新 --------------------------------------


PS: 这个自动配置比较省心,但是有时也会抽风.
这个自动配置账号信息是Xcode 8.0 + 的才有的
有了配置文件之后,你也可以这样手动配置


PS: 稳当,我喜欢!😎
2017.09.04 更新 --------------------------------------
然后 打开Scheme

设置Archive成 release 状态

然后打包 Archive

Archive成功之后会弹出如下界面

也可以在Window -> Organizer 打开这个页面
现在先别着急,如果是只要导出ipa包的话,可以跳过这一步直接看下面的,如果是打包并上传的话那就继续看下去.
打包并上传要先去 iTunes Connect 创建一个app
登录iTunes Connect 官网
创建一个APP套餐


这里我们已经创建了一个app 了,这个时候就可以使用Xcode 直接上传了,我们先把那个详细的信息填写了吧


上传图片预览 或者是视频演示.
图片预览可以由 模拟器截图来展示一般选择5.5 英寸的,他会自动在所有设备上显示 5.5 英寸的预览图,或者你可以不同的屏幕的设备显示不同的图片
模拟器 截图: commod+1 放到最大 ,然后commod +s 截图

填写应用描述,关键词,技术支持网址.

注意应用的描述要尽可能的详细一点,不然审核还是会被驳回


这里就已经是完成了一个APP的创建了.,这个时候是不是还少了ipa包呢?哈哈哈,别急,下面就来啦.
导出成ipa包 (注意,这里如果没有付费的开发者账号,将无法打包成ipa包)
PS: 注意!!注意!!注意!!
使用 Xcode 8.0+ 以上版本打包的 ipa 的需要使用更高版本的 上传工具 ( Application Loader 3.6 Xcode8.0+ 自带)
不然会出现打包好的ipa 报无效的二进制文件
这里分2种情况: 操作都是差不多的.
1.直接导出ipa包 ,使用Application Loader(苹果官方指定上传软件 上传 ipa 包) 上传ipa包 (一般来说本人喜欢用这个,比较快)
https://itunesconnect.apple.com/apploader/ApplicationLoader_3.0.dmg // 不适用 Xcode 8.0+ 打包的ipa
2.直接使用Xcode 直接上传 (简单,速度较慢)
下面只介绍 方法1:




使用Application Loader(苹果官方指定上传软件 上传 ipa 包) 上传,注意要登录对应的开发者账号
使用Application Loader 上传

上传完成之后会出现一个绿色的打钩的标准,就是成功了
然后要发布到AppStore的话,直接去ITunes Connect 上选择构建版本然后提交审核就行了.
自此,已经完成全部内容了.
网友评论