iOS 通过github自动打包ipa

1.在apple的developer里创建好identifiers

2.在终端输入fastlane init (初始化)
3.终端输入 vim fastlane 然后选择appfile

4.在其中增加一下两行:

app_identifier("com.tech.OnePass") # The bundle identifier of your app
apple_id("audrieherreslmw32@gmail.com") # Your Apple email address

把matchfile的代码改成以下格式:

git_url("git@gitlab.com:applesoftware/fastlane-certificates.git")
git_branch("wanghai")
storage_mode("git")type("development") # The default type, can be: appstore, adhoc, enterprise or development
app_identifier(["com.tech.OnePass"])
username("audrieherreslmw32@gmail.com")
# app_identifier(["tools.fastlane.app", "tools.fastlane.app2"])
# username("user@fastlane.tools") # Your Apple Developer Portal username# For all available options run `fastlane match --help`
# Remove the # in the beginning of the line to enable the other options# The docs are available on https://docs.fastlane.tools/actions/match

5.在终端输入fastlane match development(初始化的时候不用输–readonly)——创建debug的证书
6.先把别的目录的device.txt拷贝到这个文件下:

cp ../tomato-clock-ios/devices.txt .

这段命令的意思是:
-‘cp’就是拷贝copy
-’…/tomato-clock-ios/devices.txt’这个文件
-’.’ 到当前目录下
7.在终端输入vim fastlane/Fastfile,把以下代码加入其中,是跑fastlane的时候刷设备号,跑真机用的:

desc "Add devices"lane :devices doregister_devices(devices_file: "./devices.txt")match(type: "development", force_for_new_devices: true)end

7.在终端输入fastlane match appstore——创建relase的证书
8.改一下fastlane中Fastfile的文件内容,主要是以下几点:
8.1 把Apple Distribution改成当前的开发者——code_sign_identity: “Apple Distribution: hai wang (9ZX5JT86V6)”
8.2 把app的名字改成当前的名字 targets: “OnePass”,
8.3 把team ID也改成当前的9ZX5JT86V6

default_platform(:ios)
platform :ios dodesc "Add devices"lane :devices doregister_devices(devices_file: "./devices.txt")match(type: "development", force_for_new_devices: true)enddesc "match"lane :setup_match dosetupmatch(type: "appstore",readonly: true,keychain_name: "action.keychain",keychain_password: ENV["MATCH_PASSWORD"])enddesc "build"lane :build dosetup_matchapp_store_connect_api_key(key_id: ENV["KEY_ID"],issuer_id: ENV["ISSUER_ID"],key_content: ENV["AUTHKEY"],duration: 1200,in_house: false,is_key_content_base64: true)update_code_signing_settings(use_automatic_signing: false,path: "OnePass.xcodeproj",team_id: "9ZX5JT86V6",targets: "OnePass",code_sign_identity: "Apple Distribution: hai wang (9ZX5JT86V6)")build_app(workspace: "OnePass.xcworkspace",scheme: "OnePass",export_method: "app-store",output_directory: "ipas",clean: true,export_team_id: "9ZX5JT86V6",output_name:   "OnePass.ipa",export_options: {method: "app-store",signingCertificate: "Apple Distribution: hai wang (9ZX5JT86V6)",teamID: "9ZX5JT86V6",signingStyle: "manual",provisioningProfiles: {"com.tech.OnePass" => "match AppStorecom.tech.OnePasss",}})upload_to_testflight(skip_submission: true, skip_waiting_for_build_processing: true)slack_message(targets: "OnePass")end#### Private ####private_lane :setup docreate_keychain(name: "action.keychain",password: ENV["MATCH_PASSWORD"],default_keychain: true,unlock: true,timeout: 3600,lock_when_sleeps: false,require_create: true)sh("security list-keychains -d user")sh("security default-keychain -d user")sh("security find-identity -v -p codesigning action.keychain")endprivate_lane :slack_message do |options|build_number = get_build_number(xcodeproj: "OnePass.xcodeproj")slack(message: "App successfully uploaded to iTunesConnect.",success: true,slack_url: ENV["SLACK_URL"],attachment_properties: {fields: [{title: "Build number",value: build_number,},{title: "Targets",value: options[:targets],}]})end
end

8.在终端输入ag hai
9.在github上创建一个这个邮箱的账号,新建一个仓库
10.在gitlab中选择设置,点击repositories,选择Mirroring repositories,按照以下格式输入:

11.在终端输入(必须要输入):

cp -r ../loancalc-ios/.github .

12.在终端输入(必须要输入):

cp ../tomatolifeios/Gemfile .
bundle

13.在github新建的仓库中选中setting,然后选中secrets,新建仓库的secret:

  1. AUTHKEY:
cat ~/Downloads/AuthKey_XXXXX.p8|base64|pbcopy
  1. ISSUER_ID & KEY_ID:

  2. MATCH_PASSWORD:

123123
  1. SLACK_URL:
https://hooks.slack.com/services/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
  1. SSH_PRIVATE_KEY:
 cd tomatolifeioscd sshcat id_rsa|pbcopy

输入完之后,将代码git push完之后,输入git tag build-1就会自动打包了(git tag build - X)X是当前的build号
之后在github上就可以找到这个提交的代码了

在action里查看打包的进程:

iOS 通过github自动打包ipa相关推荐

  1. python脚本控制ios手机app_iOS自动打包ipa(Python脚本)

    系列 安装Python库 $ pip install requests Python脚本 $ cd iOS项目目录 $ vim build_using_python.py #! /usr/bin/py ...

  2. 软件测试ios打包,ios开发怎样将打包ipa发送给测试人员

    ios开发怎样将打包ipa发送给测试人员 需要打包之前做点工作,把开发人员的手机UUID填写到证书的申请里边(开发者中心Devices一栏),或者放到蒲公英也可以 如何通过ipa 查看ios app是 ...

  3. iOS 两套自动打包脚本

    黑客技术点击右侧关注,了解黑客的世界! Java开发进阶点击右侧关注,掌握进阶之路! Linux编程点击右侧关注,免费入门到精通! 作者 | Hsusue  https://juejin.im/pos ...

  4. iOS Jenkins + fastlane自动打包,蒲公英上传

    文章目录 前言 前置工作 1.安装 jenkins 2.jenkins配置 2.1 打开浏览器,进入到 jenkins 初始化 2.2 安装插件 2.3 环境变量配置 3.创建任务 3.1 新建任务 ...

  5. 免费生成ios证书,利用Hbuilder打包ipa

    虽然xcode现在可以免证书进行测试了,但众多跨平台开发者,如果还没注册苹果开发者账号. 想安装到自己非越狱手机测试是无能为力了. 不过新技术来了,只需要普通免费的苹果账号无需付费成为开发者就可以申请 ...

  6. iOS 命令行自动打包 (archive)

    原文链接:http://www.jianshu.com/p/2247f76404eb iOS 开发工程师在测试修复 bug 的过程中,一般会存在频繁打包的情况,如果一步步在 xcode 中点击 arc ...

  7. Xcode配置RunScript编译完自动打包ipa

    2019独角兽企业重金招聘Python工程师标准>>> 选择项目->TARGETS->Build Phases 点击+,选择New Run Script Phases,粘 ...

  8. ios用 shell 自动打包静态库(里面包含真机和模拟器)

    强烈建议用脚本打包,这样支持模拟器和真机 第一步:.创建一个shellcmd文件夹里面放着脚本文件(shellcmd 在工程里面) 如图:(下载链接) 第二步:在sdk 相同的文件夹下创建一个新的sh ...

  9. iOS 通过Jenkins 自动构建ipa

    为什么80%的码农都做不了架构师?>>>    http://www.jianshu.com/p/ce36997919b4 转载于:https://my.oschina.net/So ...

最新文章

  1. [Android开发常见问题-12] Android开发中debug.keystore如何使用。
  2. Gear 360新款发布!预购有礼哦
  3. 字符串切割(split())
  4. 目标检测--吴恩达深度学习记录
  5. tomcat原理解析(一):一个简单的实现
  6. 2Python全栈之路系列之MysQl基本数据类型
  7. win7找回开机密码_电脑密码忘记了?教你四步轻松找回电脑开机密码
  8. 苹果XR信号差,可否要求苹果公司召回?
  9. SQL Server中数据透视表的Python脚本
  10. Python入门--创建类的对象
  11. SketchUp2020下载SketchUp2020下载安装SketchUp草图大师2020下载安装详细教程
  12. python 调用matlab 数据类型问题
  13. java调用高德地图获取经纬度
  14. shell脚本分析cctv 央视 shtml 获取 m3u8链接,每天自动下载2k超清版本《新闻联播》以便未能按时收看时学习跟进
  15. Python3爬取人人网(校内网)个人照片及朋友照片,并一键下载到本地~~~附源代码...
  16. 聊一聊SEO(搜索引擎优化)
  17. matlab 子函数怎么写,matlab中怎么写函数
  18. 电脑端epub阅读器分享
  19. Redis三种删除策略
  20. 也许履历表可以这样填

热门文章

  1. 「学习笔记」回文树/回文自动机(Palindromic Tree)
  2. 快排和归并排序--快排处理第k大元素
  3. 二维码的20种商业应用模式
  4. 【正点原子FPGA连载】 第七章 Verilog HDL语法 摘自【正点原子】DFZU2EG/4EV MPSoC 之FPGA开发指南V1.0
  5. myeclipse新建项目部署到tomcat中,点击finish键没反应
  6. 选择排序总结以及排序算法的稳定性
  7. 预处理--python实现用随机森林评估特征的重要性
  8. 【转】什么是数据敏感度?
  9. python音频 降噪_从视频中提取音频数据,然后应用傅里叶对音频降噪(python)...
  10. 大规模SNS中兴趣圈子的自动挖掘