android-adb-extension 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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: []