iOS~fastlane自动打包上传ITC

• OS X 10.9 (Mavericks) 以上
• Ruby 2.0 以上
• Xcode
• 拥有一个付费的苹果开发者账号
• 自动打包前请保证工程的正确性,确认手动打包可以成功
• 下面的流程不包括创建屏幕截图

ruby –v //确认ruby版本
xcode-select –install //检查 Xcode 命令行工具(CLT)是否安装
sudo gem install fastlane –verbose //安装fastlane
如果报错You don't have write permissions for the /usr/bin directory.
把命令换为 sudo gem install -n /usr/local/bin fastlane –verbose
安装完成后,为项目配置fastlane
cd 项目路径
fastlane init
期间会让你输入AppleID的账号密码(后续只需要输入账号,不需要再次输入密码)

iOS~fastlane自动打包上传ITC_第1张图片
image.png

登录成功后会让你确认信息,确认输入y

iOS~fastlane自动打包上传ITC_第2张图片
image.png

会检测当前APPID是否在ADC中,当前APP是否在ITC中(应该先在ITC中创建APP)
成功之后会在项目中生成如下目录文件

iOS~fastlane自动打包上传ITC_第3张图片
image.png

APPfile:用于存储应用程序标识符和AppleID等信息
Fastlane:配置管理lane
Deliverfile:配置应用在ITC中的各种信息
metadata:包含应用在ITC中的各种信息
screenshots:包含截图数据
需要注意的是,metadata和Deliverfile,都可以配置ITC的数据,但后者的优先级比前者的高,所以一般在Deliverfile里面配置就OK了
首先配置Fastlane
打开fastlane文件,添加如下代码

# 创建IPA
desc "Create ipa"
  lane :build do
    increment_build_number
    gym
  end
# 上传IPA文件到ITC
desc "Upload to App Store"
  lane :upload do
    deliver
  end
# 一键命令
desc "build and upload to App Store"
  lane :do_everything do
    build
    upload
  end

之后配置Deliverfile文件
其实上传ITC最主要的文件是Deliverfile

# 1 app_identifier
app_identifier "com.xxx.xxx.fastlaneDemo"

# 2 用户名,Apple ID电子邮件地址
username "[email protected]"  

# 3 支持语言
supportedLanguages = {
  "cmn-Hans" => "zh-Hans"
}

# 4 app 名称
name({
'zh-Hans' => "fastlanee"
})

# 5 描述
description({
  'zh-Hans' => "这里是APP的文案,例如新增了什么功能,优化了什么地方,适配了iPhone X"
})

# 6 提交审核信息
submission_information({    
    export_compliance_encryption_updated: false,
    export_compliance_uses_encryption: false,
    content_rights_contains_third_party_content: false,
    add_id_info_uses_idfa: false
})

# 7 应用审核小组的联系信息 app 审核信息
app_review_information(
  first_name: "wang",
  last_name: "xxx",
  phone_number: "+86156xxxxxxx",
  email_address: "[email protected]",
  demo_user: "xxx",
  demo_password: "123456",
  notes: "noting"
)

# 8 copyright 
copyright "#{Time.now.year} 3code"

#

配置好Deliverfile后,可以删除metadata文件夹里面的内容,然后拖一张1024*1024.png的APP图标进去
执行一键命令
fastlane do_everything
如果出现报错There does not seem to be a CURRENT_PROJECT_VERSION key set for this project…
需求手动修改自动增加构建版本号的设置


iOS~fastlane自动打包上传ITC_第4张图片
image.png

iOS~fastlane自动打包上传ITC_第5张图片
image.png

如果一切顺利,期间会创建一个html形式的预览文件,确认没问题输入y


iOS~fastlane自动打包上传ITC_第6张图片
image.png

iOS~fastlane自动打包上传ITC_第7张图片
image.png

然后耐心等待就行了

iOS~fastlane自动打包上传ITC_第8张图片
image.png

上传成功

你可能感兴趣的:(iOS~fastlane自动打包上传ITC)