iOS+Fastlane自动打包发布到TestFlight

2021-10-20  本文已影响0人  Light413

iOS Fastlane 自动化打包发布到App Store,相对比我们测试时打包麻烦了一些,主要由于访问App Store需要调用相关的api进行权限验证;

自动打包发布Beta版到TestFlight

从打包到上传到TestFlight需要以下几个命令:

完整配置如下

# update_fastlane
default_platform(:iOS)
platform :iOS do 
    #生产环境打包
    lane :hs_release do |options|
    desc "Release>>>>>>>App开始打包..."
    gym(
          clean: true,
          output_directory: './fastlane/release',
          output_name:"XX.ipa",
          scheme: 'LoanManager',
          configuration: 'Release',###########
          include_bitcode: true,
          include_symbols: true,
          codesigning_identity:"iPhone Distribution: XXXXial Information Service Co.,Ltd (83XXXXXXX)",
          export_options: {
            method: 'app-store',
            provisioningProfiles: {
                "com.xx.xx" => "描述文件名称"
            },
          } 
    )
    notification(app_icon:"./fastlane/icon.png",title:"LoanManager",subtitle: "打包成功,已导出安装包>>>>>>>>", message: "准备发布中....")
    api_key = app_store_connect_api_key(
        key_id: "2CT XXXXX- KM",
        issuer_id: "69a6de84-a3e5-XXXXX-c7c11a4d1",
        key_filepath: "./fastlane/2CTXXXXTKM.p8",
        duration: 1200, # optional (maximum 1200)
        in_house: false # optional but may be required if using match/sigh
      )
      
    upload_to_testflight(
      api_key: api_key,
      skip_waiting_for_build_processing: true,
      # username: "1xxxx@163.com",
      # app_identifier: "com.sxx.xxx",
      ipa: "./fastlane/release/XX.ipa",
      skip_submission:true
     )
     
    notification(app_icon:"icon.png",title:"LoanManager",subtitle: "IPA上传成功", message: "自动打包完成!")
    end
end

主要参数解释

app_store_connect_api_key 访问App Store秘钥相关,需要在APP主页申请生成,App Store访问秘钥相关,需要在APP主页申请

APP主页申请秘钥相关信息

APP -> 用户和访问,选择秘钥

生成结果只能查看一次,注意保留所需数据


记录生成的key,下载秘钥文件然后放到项目指定目录下即可;

运行命令打包

fastlane hs_release

告诉fastlane 执行我们的任务hs_release, 大约10分钟后完成,最终结果如图,然后就可以在App Store后台我们上传的APP了;相比手动打包,构建上传是不是快了很多;

至此发布到testFlight完成!一行命令统统搞定!
上一篇 下一篇

猜你喜欢

热点阅读