android-adb-extension 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 2406ccdd27e0559069c65a7270f6d420ddf0eb66
4
+ data.tar.gz: 520e3cf6106be80b89865bf76fd1d70e83ced0d3
5
+ SHA512:
6
+ metadata.gz: cf5fdbe9404c541aad996eb48bee3cf23f100e284c34d9b3bf01eea233ba69c7682f581fbc58e9c8ee711bae37fb848888a9f5094463c2a6f9f574bc254da70c
7
+ data.tar.gz: 232b6a20502f7d1e193003810623c0974e8e8208d841301c943f871819cc1d21bab81efb98d5bc1166592a10a3a793bd74b6d5b533882aeb31fca3e88fbfa3a2
@@ -0,0 +1,4 @@
1
+ require 'to_boolean'
2
+
3
+ require 'android-adb-extension/version'
4
+ require 'android-adb-extension/adb'
@@ -0,0 +1,90 @@
1
+ class ADB
2
+ class << self
3
+ def sdk
4
+ `adb shell getprop ro.build.version.sdk`.strip.to_i
5
+ end
6
+
7
+ def release
8
+ `adb shell getprop ro.build.version.release`.strip
9
+ end
10
+
11
+ def major
12
+ release.chomp.split('.').first.to_i
13
+ end
14
+
15
+ def orientation
16
+ `adb shell dumpsys input | grep 'SurfaceOrientation' | awk '{ print $2 }'`.strip.to_i
17
+ end
18
+
19
+ def portrait?
20
+ orientation.to_boolean.eql?(false)
21
+ end
22
+
23
+ def landscape?
24
+ orientation.to_boolean.eql?(true)
25
+ end
26
+
27
+ def set_portrait
28
+ set_accelerometer_control(0)
29
+ res = set_device_orientation(0)
30
+ set_accelerometer_control(1)
31
+ res.empty? ? nil : res
32
+ end
33
+
34
+ def set_landscape
35
+ set_accelerometer_control(0)
36
+ res = set_device_orientation(1)
37
+ set_accelerometer_control(1)
38
+ res.empty? ? nil : res
39
+ end
40
+
41
+ def airplane_mode
42
+ `adb shell settings get global airplane_mode_on`.strip.to_i
43
+ end
44
+
45
+ def airplane_mode?
46
+ airplane_mode.to_boolean
47
+ end
48
+
49
+ def enable_airplane_mode
50
+ set_airplane_mode(true)
51
+ end
52
+
53
+ def disable_airplane_mode
54
+ set_airplane_mode(false)
55
+ end
56
+
57
+ def help
58
+ public_methods(false)
59
+ end
60
+
61
+ alias_method :h, :help
62
+
63
+ private
64
+
65
+ def set_accelerometer_control(aMode)
66
+ `adb shell content insert --uri content://settings/system --bind name:s:accelerometer_rotation --bind value:i:#{aMode}`
67
+ end
68
+
69
+ def set_device_orientation(aOrientation)
70
+ `adb shell content insert --uri content://settings/system --bind name:s:user_rotation --bind value:i:#{aOrientation}`
71
+ end
72
+
73
+ def set_airplane_mode(aMode)
74
+ bool = aMode.is_a?(TrueClass) || aMode.is_a?(FalseClass)
75
+ int = aMode.is_a?(Integer)
76
+
77
+ raise 'invalid parameter' unless bool || int
78
+
79
+ if bool
80
+ mode = aMode.eql?(true) ? 1 : 0
81
+ state = aMode
82
+ else
83
+ mode = aMode
84
+ state = aMode.eql?(1) ? true : false
85
+ end
86
+
87
+ `adb shell settings put global airplane_mode_on #{mode} & adb shell am broadcast -a android.intent.action.AIRPLANE_MODE --ez state #{state}`
88
+ end
89
+ end
90
+ end
@@ -0,0 +1,3 @@
1
+ module AndroidAdbExtension
2
+ VERSION = '0.0.1'
3
+ end
metadata ADDED
@@ -0,0 +1,104 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: android-adb-extension
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Jani Jegoroff
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-09-27 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: to_boolean
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '10.3'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '10.3'
41
+ - !ruby/object:Gem::Dependency
42
+ name: minitest
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '5.4'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '5.4'
55
+ - !ruby/object:Gem::Dependency
56
+ name: minitest-reporters
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '1.0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '1.0'
69
+ description: Android Debug Bridge extension provides convenient metaclass to execute
70
+ ADB shell commands.
71
+ email:
72
+ - jani.jegoroff@gmail.com
73
+ executables: []
74
+ extensions: []
75
+ extra_rdoc_files: []
76
+ files:
77
+ - lib/android-adb-extension.rb
78
+ - lib/android-adb-extension/adb.rb
79
+ - lib/android-adb-extension/version.rb
80
+ homepage: http://github.com/JaniJegoroff/android-adb-extension
81
+ licenses:
82
+ - MIT
83
+ metadata: {}
84
+ post_install_message:
85
+ rdoc_options: []
86
+ require_paths:
87
+ - lib
88
+ required_ruby_version: !ruby/object:Gem::Requirement
89
+ requirements:
90
+ - - ">="
91
+ - !ruby/object:Gem::Version
92
+ version: '0'
93
+ required_rubygems_version: !ruby/object:Gem::Requirement
94
+ requirements:
95
+ - - ">="
96
+ - !ruby/object:Gem::Version
97
+ version: '0'
98
+ requirements: []
99
+ rubyforge_project:
100
+ rubygems_version: 2.2.2
101
+ signing_key:
102
+ specification_version: 4
103
+ summary: Android debug bridge extension.
104
+ test_files: []