闲来无事的懒人-打包ipa
gym 打包
cd项目根目录, 创建自动打包脚本:
#!/bin/bash
#计时
SECONDS=0
#假设脚本放置在与项目相同的路径下
project_path=$(pwd)
#取当前时间字符串添加到文件结尾
now=$(date +"%Y_%m_%d_%H_%M_%S")
#指定项目的scheme名称
scheme="Your App Name"
#指定要打包的配置名
configuration="Appstore"
#指定打包所使用的输出方式,目前支持app-store, package, ad-hoc, enterprise, development, 和developer-id,即xcodebuild的method参数
export_method='app-store'
#指定项目地址
workspace_path="$project_path/AppName.xcworkspace"
#指定输出路径
output_path="./build"
#指定输出归档文件地址
archive_path="$output_path/AppName${now}.xcarchive"
#指定输出ipa地址
ipa_path="$output_path/AppName${now}.ipa"
#指定输出ipa名称
ipa_name="AppName${now}.ipa"
#获取执行命令时的commit message
commit_msg="$1"
#输出设定的变量值
echo "===workspace path: ${workspace_path}==="
echo "===archive path: ${archive_path}==="
echo "===ipa path: ${ipa_path}==="
echo "===export method: ${export_method}==="
echo "===commit msg: $1==="
#先清空前一次build
gym --workspace ${workspace_path} --scheme ${scheme} --clean --configuration ${configuration} --archive_path ${archive_path} --export_method ${export_method} --output_directory ${output_path} --output_name ${ipa_name}#输出总用时
echo "===Finished. Total time: ${SECONDS}s==="
提升脚本权限 chmod +x gym.sh
执行脚本 ./gym.sh
然后在项目根目录选择对应ipa 用 Application Loader 上传 即可
fastlane 安装 执行 【闲来无事的懒人-打包ipa】进入iterm
$ sudo gem install fastlane -NV
成功后 cd 到跟目录 然后fastlane init 然后更改为下面配置
将文件 fastlane/Fastfile 内容更换为下面脚本
default_platform :ios
scheme = "Your App Name"def prepare_version(options)
increment_version_number(
version_number: options[:version]
)increment_build_number(
build_number: options[:build]
)
enddesc "Deploy a new version to the App Store"lane :appstore do |options|prepare_version(options)
full_version = options[:version] + '_' + options[:build]gym(
scheme: "#{scheme}",
workspace: "#{scheme}.xcworkspace",
silent: true,
clean: true,
configuration: "Release",
export_method: "app-store",
output_directory: "./build",
output_name: "#{scheme}_#{full_version}.ipa"
)deliver(
force: true,
skip_screenshots:true,
skip_metadata: true,
submit_for_review:true,
automatic_release:true
)end
项目根目录运行 fastlane appstore version:1.0.0 build:001
版本和构建版本根据项目当前情况 运行结束及上传成功
如果打包archive成功 没有导出ad_hoc ipa 应该去生成对应配置证书两种对比 第二种相对省事 可是时间可能比第一种慢
推荐阅读
- 热闹中的孤独
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- 放屁有这三个特征的,请注意啦!这说明你的身体毒素太多
- 一个人的旅行,三亚
- 布丽吉特,人生绝对的赢家
- 慢慢的美丽
- 尽力
- 一个小故事,我的思考。
- 家乡的那条小河
- 《真与假的困惑》???|《真与假的困惑》??? ——致良知是一种伟大的力量