用xcode6.1 打 In-hourse 模式ipa包时, 被“Your account already has a valid iOS distribution certificate..."
这样的提示折磨了好几天未果,正好最近折腾命令行打包,于是试着用xcodebuild、xcrun命令打包。
从苹果开发者中心操作到命令行步骤如下:
1.打开钥匙串访问程序,执行“钥匙串访问”->"证书助理"->"从颁发机构求证书",按下图填写
点“继续”,填写证书名字“CertificateSigningRequest.certSigningRequest” 和存储路径,“存储” - > "继续",
这个证书在苹果开发中心要用到。
2.登陆企业账号->Member Center->
Certificates, Identifiers & Profiles
依次操作
Certificates下Development (需用到步骤1中生成的证书)和Production(下载企业发布证书
ios_distribution.cer)、
Identifiers下App IDs(添加app id, 其中形如com.xxx.*这样的通配符app id可用于多个app发布)、
Provisioning Profiles下Development
(生成并下载DropsAppsDev.mobileprovision)和Distribution(
生成并下载DropsAppsDistribute.mobileprovision), 下载后分别双击安装,用命令行打ipa包时候只用到distribution相关的二个文件。
3.cd到待打包项目根目录(即
*.xcodeproj所在目录),分别执行如下命令:
a.清除*.app
$xcodebuild clean
b. 生成*.app
$xcodebuild -sdk iphoneos8.1
c.*.app打包成*.ipa
xcrun -sdk iphoneos8.1 PackageApplication -v "build/Release-iphoneos/TestDistribute.app" -o "/Users/drops/Desktop/TestAppDistribute.ipa" --embed "/Users/drops/Downloads/DropsAppsDistribute.mobileprovision" CODE_SIGN_IDENTITY "iPhone Distribution: XXXXX Technology Co., Ltd./"
注:用xcodebuild -showsdks 显示可用的sdk参数,当前为iphoneos8.1
"iPhone Distribution: XXXXX Technology Co., Ltd./" - 为"钥匙串"-> "证书"苹果开发者发布证书的名称串。
阅读(6848) | 评论(0) | 转发(0) |