module Flappy::BuildApk
Public Instance Methods
build_apk(*args, options)
click to toggle source
# File lib/flappy/util/build_apk.rb, line 6 def build_apk(*args, options) set_flavor(options) # check_not_set_flavor initialize_build_common_options(args, options) Dir.chdir(@build_dir) File.new(File.join("#{@build_dir}","dependencies.txt"), "w") @build_cmd = initialize_apk_build_cmd logger_info_and_run_build_command # temp_cmd = initialize_get_dependencies_cmd; # logger_info_and_get_dependencies_command temp_cmd output_apk publish_build_app(options) if options.publish? logger_info_blank_line end
Private Instance Methods
check_build_gradle_exist()
click to toggle source
# File lib/flappy/util/build_apk.rb, line 97 def check_build_gradle_exist return if File.exist?("#{@build_dir}/build.gradle") logger.error "The build.gradle isn't exit" exit 1 end
check_no_output_apk()
click to toggle source
# File lib/flappy/util/build_apk.rb, line 83 def check_no_output_apk unless @builded_apk logger.error 'Builded has no output apk' exit 1 end end
check_not_set_flavor()
click to toggle source
# File lib/flappy/util/build_apk.rb, line 90 def check_not_set_flavor unless @flavor logger.error 'please set flavor' exit 1 end end
cheniu_prefix_gradle_build_path()
click to toggle source
# File lib/flappy/util/build_apk.rb, line 62 def cheniu_prefix_gradle_build_path "#{@build_dir}/cheniu/build/outputs/apk" end
gradle_build_path()
click to toggle source
# File lib/flappy/util/build_apk.rb, line 54 def gradle_build_path "#{@build_dir}/build/outputs/apk" end
initialize_apk_build_cmd()
click to toggle source
# File lib/flappy/util/build_apk.rb, line 40 def initialize_apk_build_cmd check_build_gradle_exist cmd = "./gradlew build" cmd = "./gradlew #{@flavor}" unless @flavor.blank? cmd end
initialize_get_dependencies_cmd()
click to toggle source
# File lib/flappy/util/build_apk.rb, line 48 def initialize_get_dependencies_cmd #create dependencies.txt cmd = "./gradlew -q app:dependencies --configuration compile > #{@build_dir}/dependencies.txt" cmd end
output_apk()
click to toggle source
# File lib/flappy/util/build_apk.rb, line 66 def output_apk @builded_apk ||= Dir["#{gradle_build_path}/*.apk"].find { |i| i =~ /release/ ||i =~ /debug/} @builded_apk ||= Dir["#{prefix_gradle_build_path}/*.apk"].find { |i| i =~ /release/ || i =~ /debug/} @builded_apk ||= Dir["#{@build_dir}/*.apk"].find { |i| i =~ /release/ || i =~ /debug/ } @builded_apk ||= Dir["#{cheniu_prefix_gradle_build_path}/*.apk"].find { |i| i =~ /release/ || i =~ /debug/} check_no_output_apk apk_info = Flappy.apk_info(@builded_apk) # binding.pry @apk_name = @name.blank? ? "#{apk_info[:name]}-#{apk_info[:version]}" : @name @builded_app_path = "#{@build_dir}/#{@apk_name}.apk" FileUtils.cp(@builded_apk, @builded_app_path) end
prefix_gradle_build_path()
click to toggle source
# File lib/flappy/util/build_apk.rb, line 58 def prefix_gradle_build_path "#{@build_dir}/app/build/outputs/apk" end
set_flavor(options)
click to toggle source
# File lib/flappy/util/build_apk.rb, line 30 def set_flavor(options) unless options.flavor.blank? @flavor = options.flavor build_type = options[:debug] ? 'Debug' : 'Release' unless @flavor =~ /^assemble(.+)/ @flavor = "assemble#{@flavor}#{build_type}" end end end