module FIR::Info

Public Instance Methods

apk_info(apk_path, options = {}) click to toggle source
# File lib/fir/util/info.rb, line 33
def apk_info(apk_path, options = {})
  apk  = FIR::Parser::Apk.new(apk_path)
  info = apk.full_info(options)
  info
end
info(*args, options) click to toggle source
# File lib/fir/util/info.rb, line 6
def info(*args, options)
  file_path = File.absolute_path(args.first.to_s)
  is_all    = !options[:all].blank?

  check_file_exist file_path
  check_supported_file file_path

  file_type = File.extname(file_path).delete('.')

  logger.info "Analyzing #{file_type} file......"
  logger_info_dividing_line

  app_info = send("#{file_type}_info", file_path, full_info: is_all)
  app_info.each { |k, v| logger.info "#{k}: #{v}" }

  logger_info_blank_line
end
ipa_info(ipa_path, options = {}) click to toggle source
# File lib/fir/util/info.rb, line 24
def ipa_info(ipa_path, options = {})
  ipa  = FIR::Parser::Ipa.new(ipa_path)
  app  = ipa.app
  info = app.full_info(options)

  ipa.cleanup
  info
end
obb_info(apk_path, options = {}) click to toggle source
# File lib/fir/util/info.rb, line 39
def obb_info(apk_path, options = {})
  path = apk_path.split("/")
  filename = path[-1]
  version = filename.gsub(/\D/, "")

  identifier = filename.sub!(/main./, "")  
  identifier = filename.sub!(/#{version}./, "") 
  identifier = filename.sub!(/.obb/, "") 
  @info ||= {
      type:       'android',
      identifier: identifier,
      name:       'OBB',
      build:     version,
      version:   version
    }
end