Sha256: 51e670316a8b17f6b3f51fc7c3dbc20eecfab88057c9ace1a2c79d1e692149a0

Contents?: true

Size: 1.05 KB

Versions: 11

Compression:

Stored size: 1.05 KB

Contents

require_relative 'dryrun_utils'
require_relative 'android_utils'

module Dryrun
  class InstallApplicationCommand

    def run(builder, package, launcher_activity, custom_module, flavour, device)
      execute_line = get_execution_command_line(package, launcher_activity)
      builder.clean

      if device.nil?
        puts 'No devices picked/available, proceeding with assemble instead'.green
        builder.assemble(custom_module, flavour)
      else
        builder.install(custom_module, flavour)
      end

      unless device.nil?
        AndroidUtils.clear_app_data(package)
        AndroidUtils.pretty_run(execute_line, package)
      end
    end

    def get_execution_command_line(package, launcher_activity)
      "am start -n \"#{launcheable_activity(package, launcher_activity)}\" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER"
    end

    def launcheable_activity(package, launcher_activity)
      full_path_to_launcher = "#{package}#{launcher_activity.gsub(package, '')}"
      "#{package}/#{full_path_to_launcher}"
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
dryrun-1.3.2 lib/dryrun/install_application_command.rb
dryrun-1.3.0 lib/dryrun/install_application_command.rb
dryrun-1.2.1 lib/dryrun/install_application_command.rb
dryrun-1.2.0 lib/dryrun/install_application_command.rb
dryrun-1.1.6 lib/dryrun/install_application_command.rb
dryrun-1.1.5 lib/dryrun/install_application_command.rb
dryrun-1.1.4 lib/dryrun/install_application_command.rb
dryrun-1.1.3 lib/dryrun/install_application_command.rb
dryrun-1.1.2 lib/dryrun/install_application_command.rb
dryrun-1.1.1 lib/dryrun/install_application_command.rb
dryrun-1.1.0 lib/dryrun/install_application_command.rb