【潮汐】iOS-fastlane自動(dòng)化打包到TestFlight進(jìn)階

fastlane自動(dòng)化打包到TestFlight發(fā)布進(jìn)階,高級(jí)語(yǔ)法,包含蒲公英和TestFlight。進(jìn)階先配置基礎(chǔ)自動(dòng)化打包參考:iOS利用Fastlane自動(dòng)打包上傳到蒲公英和TestFlight

完整Fastfile文件代碼如下:
#打包發(fā)布到蒲公英命令:
#dev
#fastlane pgy_Debug 
#預(yù)上線
#fastlane pgy_ReleaseYSX 
#線上正式
#fastlane pgy_Release

#打包發(fā)布到AppStore的TestFlight命令:
#dev
#fastlane Debug 
#預(yù)上線
#fastlane ReleaseYSX 
#線上正式
#fastlane Release

#聲明
IPA_TIME = Time.now.strftime("%Y年%m月%d日%H:%M")#打包日期,全局變量

default_platform(:ios)

platform :ios do
   desc "多環(huán)境、多平臺(tái)自動(dòng)化打包"#通用注釋,打包不用修改

   #update_content是版本更新內(nèi)容,每次打包可以修改此處
   update_content = "修復(fù)bug,穩(wěn)定"
   
#打包上傳到蒲公英 - Debug,打包命令:cd到工程下再命令:fastlane pgy_Debug
lane :pgy_Debug do
#局部變量
  ENCIRONMENT_DES = "dev環(huán)境"#環(huán)境配置
  pgy_package(configuration: "Debug")#指定構(gòu)建App的配置  Release、Debug、自定義
end
#打包上傳到蒲公英 - Debug_ProductServer
lane :pgy_ReleaseYSX do
  #局部變量
    ENCIRONMENT_DES = "預(yù)上線環(huán)境"#環(huán)境配置
    pgy_package(configuration: "Debug_ProductServer")#指定構(gòu)建App的配置  Release、Debug、自定義
  end
#打包上傳到蒲公英 - Release
lane :pgy_Release do
  #局部變量
    ENCIRONMENT_DES = "線上正式環(huán)境"#環(huán)境配置
    pgy_package(configuration: "Release")#指定構(gòu)建App的配置  Release、Debug、自定義
  end

#蒲公英公用類(lèi)  
  lane :pgy_package do |option|

   build_app(export_method: "ad-hoc",#打包證書(shū)選擇
             scheme: "miniVideo",#選擇打包項(xiàng)目的taregets
             export_xcargs: "-allowProvisioningUpdates",#自動(dòng)更新證書(shū),防止因?yàn)樽C書(shū)打包失敗
             configuration: option[:configuration]#指定構(gòu)建App的配置  Release、Debug、自定義
             )
   pgyer(api_key: "02997a39bc6227fabe632e1829532b33",   user_key:"3008c7be1e0c92bd05a554dd91aa8aef",
       update_description: "【" + "#{ENCIRONMENT_DES}" + "," + "#{IPA_TIME}" + "打包上傳】"+update_content
       )
# 可選的值有:app-store、ad-hoc、development、enterprise。
  end


#打包到AppStore的TestFlight-Debug
  lane :Debug do
    #局部變量
      ENCIRONMENT_DES = "dev環(huán)境"#環(huán)境配置
      AppStore_package(configuration: "Debug")#指定構(gòu)建App的配置  Release、Debug、自定義
    end

   #打包到AppStore的TestFlight-Debug_ProductServer
  lane :ReleaseYSX do
    #局部變量
      ENCIRONMENT_DES = "預(yù)上線環(huán)境"#環(huán)境配置
      AppStore_package(configuration: "Debug_ProductServer")#指定構(gòu)建App的配置  Release、Debug、自定義
    end

    #打包到AppStore的TestFlight-Release
  lane :Release do
    #局部變量
      ENCIRONMENT_DES = "線上正式環(huán)境"#環(huán)境配置
      AppStore_package(configuration: "Release")#指定構(gòu)建App的配置  Release、Debug、自定義
    end

  #TestFlight公用類(lèi) 
  lane:AppStore_package do |option|
  #增加build版本號(hào),需要先配置build setting,每次build自動(dòng)+1
  increment_build_number(xcodeproj: "miniVideo.xcodeproj") #build自動(dòng)+1
    build_app(workspace: "miniVideo.xcworkspace", scheme: "miniVideo",
              configuration:option[:configuration],#指定構(gòu)建App的配置  Release、Debug、自定義
    )
     upload_to_testflight(
               beta_app_review_info: {
                contact_email: "yingxiangguoji@yxgj100.com",
                contact_first_name: "ying",
                contact_last_name: "xiang",
                contact_phone: "15600301632",
                demo_account_name: "13526260425",
                demo_account_password: "888888",
                notes: "適用于fastlane自動(dòng)打包上傳提審等操作 thank you for reviewing"
              },
              localized_build_info: {
                "default": {
                  whats_new: "【" + "#{ENCIRONMENT_DES}" + "," + "#{IPA_TIME}" + "打包上傳】"+update_content,#【App更新內(nèi)容,如:修復(fù)bug】
                },
                "en-GB": {
                  whats_new: "適用于fastlane自動(dòng)打包上傳提審等操作(en-GB)",
                }
              },
     
            #  true就不自動(dòng)提審了 
                skip_waiting_for_build_processing: false,#如果您想跳過(guò)等待處理完成的過(guò)程。
                skip_submission:false,#跳過(guò)pilot的分發(fā)操作,只上傳ipa文件
                username: "yingxiangguoji@yxgj100.com",#要提交到的開(kāi)發(fā)者賬號(hào)
                app_identifier: "com.ying.miniVideo",
                beta_app_feedback_email:"yingxiangguoji@yxgj100.com",#上傳新版本時(shí)提供測(cè)試版應(yīng)用郵件
                beta_app_description:"fastlane自動(dòng)化打包App描述",#上傳新版本時(shí)提供“Beta應(yīng)用描述”【顯示在app詳情,描述里】
                demo_account_required: true,#當(dāng)蘋(píng)果進(jìn)行評(píng)論時(shí),你需要一個(gè)演示賬戶(hù)嗎?
                
            #構(gòu)建是否應(yīng)該分發(fā)給外部測(cè)試人員?
                distribute_external: true,
                  notify_external_testers: true,
                groups:"公測(cè)",#將測(cè)試人員按照組名/組id關(guān)聯(lián)到一個(gè)或多個(gè)組。例如-g“團(tuán)隊(duì)1”,“團(tuán)隊(duì)2”
                changelog:"解決測(cè)試提出的bug",#上傳新版本時(shí),提供“要測(cè)試什么”文本。skip_waiting_for_build_processing:設(shè)置更改日志需要false
                beta_app_feedback_email:"yingxiangguoji@yxgj100.com",#上傳新版本時(shí)提供測(cè)試版應(yīng)用郵件
                     ipa: "花生短視頻.ipa"#到要上載的ipa文件的路徑
            )
    
   # upload_to_testflight
    #打包命令cd到工程下再命令:fastlane Debug
  end
  
end


用VScode編輯器可以編輯,首先創(chuàng)建一個(gè).rb結(jié)尾的文件,如Fastfile.rb

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容