fastlane

作者: 大虾咪 | 来源:发表于2018-12-03 14:55 被阅读24次

    1.初始化fastlane

    fastlane init

    2.在终端中,输入以下命令,即可安装蒲公英的 fastlane 插件。

    fastlane add_plugin pgyer

    3.修改fastlane文件夹里面的Fastlane

    ###将********对应替换成自己项目对应的
    
    #测试包命令 (版本描述)
    # fastlane develop desc:测试自动发包3.6.0B1
    
    # 网络请求依赖
    require 'net/http'
    require 'uri'
    require 'json'
    
    #蒲公英api_key和user_key
    pgyer_api_key  = "*****************"
    pgyer_user_key = "*****************"
    
    #下载地址
    app_url = "*****************"
    app_icon = "*****************"
    #钉钉
    DingTalkUrl = "*****************"
    
    
    
    default_platform(:ios)
    
    platform :ios do
      desc "Push a new release build to the App Store"
      lane :release do
        build_app(workspace: "*****************.xcworkspace", scheme: "*****************")
        upload_to_app_store
      end
    
      desc "测试包"
      lane :develop do |options|
        gym(
        #输出的ipa名称
        output_name:”*****************”,
        # 是否清空以前的编译信息 true:是
        clean:true,
        # 指定打包方式,Release 或者 Debug
        configuration:"Debug",
        # 指定打包所使用的输出方式,目前支持app-store, package, ad-hoc, enterprise, development
        export_method:"development",
        # 指定输出文件夹
        output_directory:"./fastlane/development",
        )
         puts "开始上传蒲公英"
         pgyer(api_key: “#{pgyer_api_key}”,
               user_key: “#{pgyer_user_key}”,
           password: "123", install_type: "2",
           update_description: options[:desc]
        )
    
         puts '开始钉钉'
         app_patch = "./fastlane/development/*****************.ipa"
         app_version = get_ipa_info_plist_value(ipa: app_patch, key: "CFBundleShortVersionString")
         app_build_version = get_ipa_info_plist_value(ipa: app_patch, key: "CFBundleVersion")
         app_name    = get_ipa_info_plist_value(ipa: app_patch, key: "CFBundleDisplayName")
         dingTalk_url = DingTalkUrl
         markdown = 
            {
                msgtype: "link", 
                    link: {
                    text: {
                       各位小姐姐、小哥哥 最新版本已发布,辛苦测试", 
                    title: "iOS #{app_name} #{app_version} (#{app_build_version}) 内测版", 
                    picUrl: "#{app_icon}", 
                    messageUrl: "#{app_url}"
                    }
            }
          uri = URI.parse(dingTalk_url)
          https = Net::HTTP.new(uri.host, uri.port)
          https.use_ssl = true
    
          request = Net::HTTP::Post.new(uri.request_uri)
          request.add_field('Content-Type', 'application/json')
          request.body = markdown.to_json
    
          response = https.request(request)
          puts "------------------------------"
          puts "Response #{response.code} #{response.message}: #{response.body}"
    
        
      end
        
    end
    

    相关文章

      网友评论

          本文标题:fastlane

          本文链接:https://www.haomeiwen.com/subject/dweycqtx.html