├── .bowerrc
├── .gitignore
├── .jshintrc
├── .travis.yml
├── CHANGELOG.md
├── Gruntfile.js
├── LICENSE
├── README.md
├── bower.json
├── change_version.py
├── karma.conf.js
├── package.json
├── src
├── assets
│ ├── BrickLogo2011.png
│ ├── ChromeADBLogo.png
│ ├── chromeadb_screenshot.png
│ ├── github.png
│ ├── icon_016.png
│ ├── icon_032.png
│ ├── icon_048.png
│ ├── icon_128.png
│ ├── icon_256.png
│ └── icon_512.png
├── index.html
├── manifest.json
├── scripts
│ ├── background.js
│ ├── chrome.js
│ ├── chromeadb.js
│ ├── controllers.js
│ ├── parser.js
│ ├── services.js
│ └── utils.js
├── styles
│ └── chromeadb.css
└── views
│ ├── controller.html
│ ├── diskspace.html
│ ├── meminfo.html
│ ├── packages.html
│ └── processes.html
└── test
└── parserSpec.js
/.bowerrc:
--------------------------------------------------------------------------------
1 | {
2 | "directory": "src/bower_components"
3 | }
4 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | src/bower_components/
2 | dist/
3 | node_modules/
4 | package/
5 | .idea/
6 | *.iml
7 | .*.swp
8 | .swp
9 | .DS_Store
10 |
--------------------------------------------------------------------------------
/.jshintrc:
--------------------------------------------------------------------------------
1 | {
2 | "node": true,
3 | "browser": true,
4 | "esnext": true,
5 | "bitwise": true,
6 | "camelcase": true,
7 | "curly": true,
8 | "eqeqeq": true,
9 | "immed": true,
10 | "indent": 2,
11 | "latedef": true,
12 | "newcap": true,
13 | "noarg": true,
14 | "quotmark": "single",
15 | "regexp": true,
16 | "undef": true,
17 | "unused": true,
18 | "strict": true,
19 | "trailing": true,
20 | "smarttabs": true,
21 | "globals": {
22 | "$": true,
23 | "$routeProvider": true,
24 | "$locationProvider": true,
25 | "parseInt": true,
26 | "parseProcessList": true,
27 | "parseDeviceInfoList": true,
28 | "parsePackageList": true,
29 | "makeCommand": true,
30 | "parseMemInfo": true,
31 | "parsePackageMemInfo": true,
32 | "parseDiskSpace": true,
33 | "parseResolution": true,
34 | "arrayBufferToString": true,
35 | "arrayBufferToBinaryString": true,
36 | "stringToArrayBuffer": true,
37 | "newZeroArray": true,
38 | "getChartId": true,
39 | "integerToArrayBuffer": true,
40 | "angular": true,
41 | "it": true,
42 | "expect": true,
43 | "describe": true,
44 | "beforeEach": true,
45 | "afterEach": true,
46 | "chrome": true
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - "0.10"
4 | before_install:
5 | - "npm install -g grunt-cli"
6 | - "npm install -g bower"
7 | - "bower install"
8 |
--------------------------------------------------------------------------------
/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | CHANGELOG
2 | =========
3 |
4 | # v 0.4.2
5 | - Improved mousepad
6 | - replaced apk install link to button that sends intent to a device
7 | - added retry input command when failed to tab or swipe
8 |
9 | # v 0.4.0
10 | - Mousepad in Controller
11 | - Support: Tab, Swipe (depends on your device)
12 |
13 | # v 0.3.0
14 | - Install an apk file
15 | - Update app icon
16 |
17 | # v 0.2.0
18 | - Add real-time graph for a process
19 |
--------------------------------------------------------------------------------
/Gruntfile.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = function (grunt) {
4 | require('load-grunt-tasks')(grunt);
5 | require('time-grunt')(grunt);
6 |
7 | grunt.initConfig({
8 | pkg: grunt.file.readJSON('package.json'),
9 | compress: {
10 | dist: {
11 | options: {
12 | archive: 'package/<%= pkg.name %>_<%= pkg.version %>.zip'
13 | },
14 | files: [
15 | {
16 | expand: true,
17 | cwd: 'dist/src/',
18 | src: ['**'],
19 | dest: ''
20 | }
21 | ]
22 | }
23 | },
24 |
25 | watch: {
26 | js: {
27 | files: ['Gruntfile.js', 'src/scripts/{,*/}*.js'],
28 | tasks: ['jshint'],
29 | options: {
30 | livereload: true
31 | }
32 | },
33 | views: {
34 | files: ['src/index.html', 'src/views/{,*/}*.html'],
35 | options: {
36 | livereload: true
37 | }
38 | },
39 | styles: {
40 | files: ['src/styles/{,*/}*.css'],
41 | tasks: [],
42 | options: {
43 | livereload: true
44 | }
45 | },
46 | livereload: {
47 | options: {
48 | livereload: '<%= connect.options.livereload %>'
49 | },
50 | files: [
51 | 'src/views/**/*.html',
52 | 'src/assets/{,*/}*.{png,jpg,jpeg,gif,webp,svg}',
53 | 'src/manifest.json'
54 | ]
55 | }
56 | },
57 |
58 | jshint: {
59 | options: {
60 | jshintrc: '.jshintrc'
61 | },
62 | all: [
63 | 'Gruntfile.js',
64 | 'karma.conf.js',
65 | 'src/scripts/**/*.js',
66 | 'test/**/*.js'
67 | ]
68 | },
69 |
70 | connect: {
71 | options: {
72 | port: 9000,
73 | livereload: 35729,
74 | hostname: 'localhost',
75 | open: true
76 | },
77 | chrome: {
78 | options: {
79 | base: ['src']
80 | }
81 | }
82 | },
83 |
84 | clean: {
85 | dist: {
86 | files: [
87 | {
88 | dot: true,
89 | src: ['dist/*', 'package/*.zip']
90 | }
91 | ]
92 | }
93 | },
94 |
95 | karma: {
96 | unit: {
97 | configFile: 'karma.conf.js',
98 | singleRun: true,
99 | browsers: ['PhantomJS']
100 | }
101 | },
102 |
103 | copy: {
104 | dist: {
105 | files: [
106 | {
107 | cwd: '.',
108 | dot: false,
109 | dest: 'dist/',
110 | src: [
111 | 'src/manifest.json',
112 | 'src/index.html',
113 | 'src/scripts/*',
114 | 'src/styles/*',
115 | 'src/assets/*',
116 | 'src/views/*',
117 | 'src/bower_components/bootstrap/dist/css/bootstrap.min.css',
118 | 'src/bower_components/bootstrap/dist/js/bootstrap.min.js',
119 | 'src/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.eot',
120 | 'src/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.svg',
121 | 'src/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf',
122 | 'src/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.woff',
123 | 'src/bower_components/bootstrap/dist/js/bootstrap.min.css',
124 | 'src/bower_components/jquery/dist/jquery.min.js',
125 | 'src/bower_components/angular/angular.min.js',
126 | 'src/bower_components/angular-route/angular-route.min.js',
127 | 'src/bower_components/angular-sanitize/angular-sanitize.min.js',
128 | 'src/bower_components/jqplot/jquery.jqplot.min.css',
129 | 'src/bower_components/jqplot/jquery.jqplot.min.js',
130 | 'src/bower_components/jqplot/plugins/jqplot.canvasTextRenderer.min.js',
131 | 'src/bower_components/jqplot/plugins/jqplot.canvasAxisLabelRenderer.min.js'
132 | ]
133 | }
134 | ]
135 | }
136 | }
137 | });
138 |
139 | grunt.registerTask('default', [
140 | 'build'
141 | ]);
142 |
143 | grunt.registerTask('build', [
144 | 'build:dist'
145 | ]);
146 |
147 | grunt.registerTask('debug', function (platform) {
148 | var watch = grunt.config('watch');
149 | platform = platform || 'chrome';
150 |
151 | // Configure updated watch task
152 | grunt.config('watch', watch);
153 | grunt.task.run(['connect:' + platform, 'watch']);
154 | });
155 |
156 | grunt.registerTask('build:dist', [
157 | 'clean:dist',
158 | 'copy:dist',
159 | 'compress:dist'
160 | ]);
161 |
162 | grunt.registerTask('test', [
163 | 'jshint',
164 | 'karma'
165 | ]);
166 | };
167 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | BrickSimple Public License 1.0 (Based on the Mozilla Public License Version 2.0)
2 | ================================================================================
3 |
4 | 1. Definitions
5 | --------------
6 |
7 | 1.1. "Contributor"
8 | means each individual or legal entity that creates, contributes to
9 | the creation of, or owns Covered Software.
10 |
11 | 1.2. "Contributor Version"
12 | means the combination of the Contributions of others (if any) used
13 | by a Contributor and that particular Contributor's Contribution.
14 |
15 | 1.3. "Contribution"
16 | means Covered Software of a particular Contributor.
17 |
18 | 1.4. "Covered Software"
19 | means Source Code Form to which the initial Contributor has attached
20 | the notice in Exhibit A, the Executable Form of such Source Code
21 | Form, and Modifications of such Source Code Form, in each case
22 | including portions thereof.
23 |
24 | 1.5. "Incompatible With Secondary Licenses"
25 | means
26 |
27 | (a) that the initial Contributor has attached the notice described
28 | in Exhibit B to the Covered Software; or
29 |
30 | (b) that the Covered Software was made available under the terms of
31 | version 1.1 or earlier of the License, but not also under the
32 | terms of a Secondary License.
33 |
34 | 1.6. "Executable Form"
35 | means any form of the work other than Source Code Form.
36 |
37 | 1.7. "Larger Work"
38 | means a work that combines Covered Software with other material, in
39 | a separate file or files, that is not Covered Software.
40 |
41 | 1.8. "License"
42 | means this document.
43 |
44 | 1.9. "Licensable"
45 | means having the right to grant, to the maximum extent possible,
46 | whether at the time of the initial grant or subsequently, any and
47 | all of the rights conveyed by this License.
48 |
49 | 1.10. "Modifications"
50 | means any of the following:
51 |
52 | (a) any file in Source Code Form that results from an addition to,
53 | deletion from, or modification of the contents of Covered
54 | Software; or
55 |
56 | (b) any new file in Source Code Form that contains any Covered
57 | Software.
58 |
59 | 1.11. "Patent Claims" of a Contributor
60 | means any patent claim(s), including without limitation, method,
61 | process, and apparatus claims, in any patent Licensable by such
62 | Contributor that would be infringed, but for the grant of the
63 | License, by the making, using, selling, offering for sale, having
64 | made, import, or transfer of either its Contributions or its
65 | Contributor Version.
66 |
67 | 1.12. "Secondary License"
68 | means either the GNU General Public License, Version 2.0, the GNU
69 | Lesser General Public License, Version 2.1, the GNU Affero General
70 | Public License, Version 3.0, or any later versions of those
71 | licenses.
72 |
73 | 1.13. "Source Code Form"
74 | means the form of the work preferred for making modifications.
75 |
76 | 1.14. "You" (or "Your")
77 | means an individual or a legal entity exercising rights under this
78 | License. For legal entities, "You" includes any entity that
79 | controls, is controlled by, or is under common control with You. For
80 | purposes of this definition, "control" means (a) the power, direct
81 | or indirect, to cause the direction or management of such entity,
82 | whether by contract or otherwise, or (b) ownership of more than
83 | fifty percent (50%) of the outstanding shares or beneficial
84 | ownership of such entity.
85 |
86 | 2. License Grants and Conditions
87 | --------------------------------
88 |
89 | 2.1. Grants
90 |
91 | Each Contributor hereby grants You a world-wide, royalty-free,
92 | non-exclusive license:
93 |
94 | (a) under intellectual property rights (other than patent or trademark)
95 | Licensable by such Contributor to use, reproduce, make available,
96 | modify, display, perform, distribute, and otherwise exploit its
97 | Contributions, either on an unmodified basis, with Modifications, or
98 | as part of a Larger Work; and
99 |
100 | (b) under Patent Claims of such Contributor to make, use, sell, offer
101 | for sale, have made, import, and otherwise transfer either its
102 | Contributions or its Contributor Version.
103 |
104 | 2.2. Effective Date
105 |
106 | The licenses granted in Section 2.1 with respect to any Contribution
107 | become effective for each Contribution on the date the Contributor first
108 | distributes such Contribution.
109 |
110 | 2.3. Limitations on Grant Scope
111 |
112 | The licenses granted in this Section 2 are the only rights granted under
113 | this License. No additional rights or licenses will be implied from the
114 | distribution or licensing of Covered Software under this License.
115 | Notwithstanding Section 2.1(b) above, no patent license is granted by a
116 | Contributor:
117 |
118 | (a) for any code that a Contributor has removed from Covered Software;
119 | or
120 |
121 | (b) for infringements caused by: (i) Your and any other third party's
122 | modifications of Covered Software, or (ii) the combination of its
123 | Contributions with other software (except as part of its Contributor
124 | Version); or
125 |
126 | (c) under Patent Claims infringed by Covered Software in the absence of
127 | its Contributions.
128 |
129 | This License does not grant any rights in the trademarks, service marks,
130 | or logos of any Contributor (except as may be necessary to comply with
131 | the notice requirements in Section 3.4).
132 |
133 | 2.4. Subsequent Licenses
134 |
135 | No Contributor makes additional grants as a result of Your choice to
136 | distribute the Covered Software under a subsequent version of this
137 | License (see Section 10.2) or under the terms of a Secondary License (if
138 | permitted under the terms of Section 3.3).
139 |
140 | 2.5. Representation
141 |
142 | Each Contributor represents that the Contributor believes its
143 | Contributions are its original creation(s) or it has sufficient rights
144 | to grant the rights to its Contributions conveyed by this License.
145 |
146 | 2.6. Fair Use
147 |
148 | This License is not intended to limit any rights You have under
149 | applicable copyright doctrines of fair use, fair dealing, or other
150 | equivalents.
151 |
152 | 2.7. Conditions
153 |
154 | Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted
155 | in Section 2.1.
156 |
157 | 3. Responsibilities
158 | -------------------
159 |
160 | 3.1. Distribution of Source Form
161 |
162 | All distribution of Covered Software in Source Code Form, including any
163 | Modifications that You create or to which You contribute, must be under
164 | the terms of this License. You must inform recipients that the Source
165 | Code Form of the Covered Software is governed by the terms of this
166 | License, and how they can obtain a copy of this License. You may not
167 | attempt to alter or restrict the recipients' rights in the Source Code
168 | Form.
169 |
170 | 3.2. Distribution of Executable Form
171 |
172 | If You distribute Covered Software in Executable Form then:
173 |
174 | (a) such Covered Software must also be made available in Source Code
175 | Form, as described in Section 3.1, and You must inform recipients of
176 | the Executable Form how they can obtain a copy of such Source Code
177 | Form by reasonable means in a timely manner, at a charge no more
178 | than the cost of distribution to the recipient; and
179 |
180 | (b) You may distribute such Executable Form under the terms of this
181 | License, or sublicense it under different terms, provided that the
182 | license for the Executable Form does not attempt to limit or alter
183 | the recipients' rights in the Source Code Form under this License.
184 |
185 | 3.3. Distribution of a Larger Work
186 |
187 | You may create and distribute a Larger Work under terms of Your choice,
188 | provided that You also comply with the requirements of this License for
189 | the Covered Software. If the Larger Work is a combination of Covered
190 | Software with a work governed by one or more Secondary Licenses, and the
191 | Covered Software is not Incompatible With Secondary Licenses, this
192 | License permits You to additionally distribute such Covered Software
193 | under the terms of such Secondary License(s), so that the recipient of
194 | the Larger Work may, at their option, further distribute the Covered
195 | Software under the terms of either this License or such Secondary
196 | License(s).
197 |
198 | 3.4. Notices
199 |
200 | You may not remove or alter the substance of any license notices
201 | (including copyright notices, patent notices, disclaimers of warranty,
202 | or limitations of liability) contained within the Source Code Form of
203 | the Covered Software, except that You may alter any license notices to
204 | the extent required to remedy known factual inaccuracies.
205 |
206 | 3.5. Application of Additional Terms
207 |
208 | You may choose to offer, and to charge a fee for, warranty, support,
209 | indemnity or liability obligations to one or more recipients of Covered
210 | Software. However, You may do so only on Your own behalf, and not on
211 | behalf of any Contributor. You must make it absolutely clear that any
212 | such warranty, support, indemnity, or liability obligation is offered by
213 | You alone, and You hereby agree to indemnify every Contributor for any
214 | liability incurred by such Contributor as a result of warranty, support,
215 | indemnity or liability terms You offer. You may include additional
216 | disclaimers of warranty and limitations of liability specific to any
217 | jurisdiction.
218 |
219 | 4. Inability to Comply Due to Statute or Regulation
220 | ---------------------------------------------------
221 |
222 | If it is impossible for You to comply with any of the terms of this
223 | License with respect to some or all of the Covered Software due to
224 | statute, judicial order, or regulation then You must: (a) comply with
225 | the terms of this License to the maximum extent possible; and (b)
226 | describe the limitations and the code they affect. Such description must
227 | be placed in a text file included with all distributions of the Covered
228 | Software under this License. Except to the extent prohibited by statute
229 | or regulation, such description must be sufficiently detailed for a
230 | recipient of ordinary skill to be able to understand it.
231 |
232 | 5. Termination
233 | --------------
234 |
235 | 5.1. The rights granted under this License will terminate automatically
236 | if You fail to comply with any of its terms. However, if You become
237 | compliant, then the rights granted under this License from a particular
238 | Contributor are reinstated (a) provisionally, unless and until such
239 | Contributor explicitly and finally terminates Your grants, and (b) on an
240 | ongoing basis, if such Contributor fails to notify You of the
241 | non-compliance by some reasonable means prior to 60 days after You have
242 | come back into compliance. Moreover, Your grants from a particular
243 | Contributor are reinstated on an ongoing basis if such Contributor
244 | notifies You of the non-compliance by some reasonable means, this is the
245 | first time You have received notice of non-compliance with this License
246 | from such Contributor, and You become compliant prior to 30 days after
247 | Your receipt of the notice.
248 |
249 | 5.2. If You initiate litigation against any entity by asserting a patent
250 | infringement claim (excluding declaratory judgment actions,
251 | counter-claims, and cross-claims) alleging that a Contributor Version
252 | directly or indirectly infringes any patent, then the rights granted to
253 | You by any and all Contributors for the Covered Software under Section
254 | 2.1 of this License shall terminate.
255 |
256 | 5.3. In the event of termination under Sections 5.1 or 5.2 above, all
257 | end user license agreements (excluding distributors and resellers) which
258 | have been validly granted by You or Your distributors under this License
259 | prior to termination shall survive termination.
260 |
261 | ************************************************************************
262 | * *
263 | * 6. Disclaimer of Warranty *
264 | * ------------------------- *
265 | * *
266 | * Covered Software is provided under this License on an "as is" *
267 | * basis, without warranty of any kind, either expressed, implied, or *
268 | * statutory, including, without limitation, warranties that the *
269 | * Covered Software is free of defects, merchantable, fit for a *
270 | * particular purpose or non-infringing. The entire risk as to the *
271 | * quality and performance of the Covered Software is with You. *
272 | * Should any Covered Software prove defective in any respect, You *
273 | * (not any Contributor) assume the cost of any necessary servicing, *
274 | * repair, or correction. This disclaimer of warranty constitutes an *
275 | * essential part of this License. No use of any Covered Software is *
276 | * authorized under this License except under this disclaimer. *
277 | * *
278 | ************************************************************************
279 |
280 | ************************************************************************
281 | * *
282 | * 7. Limitation of Liability *
283 | * -------------------------- *
284 | * *
285 | * Under no circumstances and under no legal theory, whether tort *
286 | * (including negligence), contract, or otherwise, shall any *
287 | * Contributor, or anyone who distributes Covered Software as *
288 | * permitted above, be liable to You for any direct, indirect, *
289 | * special, incidental, or consequential damages of any character *
290 | * including, without limitation, damages for lost profits, loss of *
291 | * goodwill, work stoppage, computer failure or malfunction, or any *
292 | * and all other commercial damages or losses, even if such party *
293 | * shall have been informed of the possibility of such damages. This *
294 | * limitation of liability shall not apply to liability for death or *
295 | * personal injury resulting from such party's negligence to the *
296 | * extent applicable law prohibits such limitation. Some *
297 | * jurisdictions do not allow the exclusion or limitation of *
298 | * incidental or consequential damages, so this exclusion and *
299 | * limitation may not apply to You. *
300 | * *
301 | ************************************************************************
302 |
303 | 8. Litigation
304 | -------------
305 |
306 | Any litigation relating to this License may be brought only in the
307 | courts of a jurisdiction where the defendant maintains its principal
308 | place of business and such litigation shall be governed by laws of that
309 | jurisdiction, without reference to its conflict-of-law provisions.
310 | Nothing in this Section shall prevent a party's ability to bring
311 | cross-claims or counter-claims.
312 |
313 | 9. Miscellaneous
314 | ----------------
315 |
316 | This License represents the complete agreement concerning the subject
317 | matter hereof. If any provision of this License is held to be
318 | unenforceable, such provision shall be reformed only to the extent
319 | necessary to make it enforceable. Any law or regulation which provides
320 | that the language of a contract shall be construed against the drafter
321 | shall not be used to construe this License against a Contributor.
322 |
323 | 10. Versions of the License
324 | ---------------------------
325 |
326 | 10.1. New Versions
327 |
328 | BrickSimple LLC is the license steward. Except as provided in Section
329 | 10.3, no one other than the license steward has the right to modify or
330 | publish new versions of this License. Each version will be given a
331 | distinguishing version number.
332 |
333 | 10.2. Effect of New Versions
334 |
335 | You may distribute the Covered Software under the terms of the version
336 | of the License under which You originally received the Covered Software,
337 | or under the terms of any subsequent version published by the license
338 | steward.
339 |
340 | 10.3. Modified Versions
341 |
342 | If you create software not governed by this License, and you want to
343 | create a new license for such software, you may create and use a
344 | modified version of this License if you rename the license and remove
345 | any references to the name of the license steward (except to note that
346 | such modified license differs from this License).
347 |
348 | 10.4. Distributing Source Code Form that is Incompatible With Secondary
349 | Licenses
350 |
351 | If You choose to distribute Source Code Form that is Incompatible With
352 | Secondary Licenses under the terms of this version of the License, the
353 | notice described in Exhibit B of this License must be attached.
354 |
355 | Exhibit A - Source Code Form License Notice
356 | -------------------------------------------
357 |
358 | This Source Code Form is subject to the terms of the BrickSimple Public
359 | License, v. 1.0. If a copy of the MPL was not distributed with this
360 | file, You can obtain one at http://bricksimple.com/bpl10.txt.
361 |
362 | If it is not possible or desirable to put the notice in a particular
363 | file, then You may include the notice in a location (such as a LICENSE
364 | file in a relevant directory) where a recipient would be likely to look
365 | for such a notice.
366 |
367 | You may add additional accurate notices of copyright ownership.
368 |
369 | Exhibit B - "Incompatible With Secondary Licenses" Notice
370 | ---------------------------------------------------------
371 |
372 | This Source Code Form is "Incompatible With Secondary Licenses", as
373 | defined by the BrickSimple Public License, v. 1.0.
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | ChromeADB
2 | =========
3 |
4 | [](https://travis-ci.org/importre/chromeadb)
5 | [](https://android-arsenal.com/details/1/863)
6 |
7 | **ChromeADB** is a Chrome ADB (Android Debug Bridge) client.
8 |
9 | When launched, you can see all devices connected to your machine if the ADB connection is successful.
10 | Click a device that you want to control or monitor. And enjoy!
11 |
12 | 
13 |
14 |
15 |
16 | How to install
17 | --------------
18 |
19 | - Install [node.js][0]
20 | - `$ npm install -g bower`
21 | - `$ bower install`
22 | - Open `chrome://extensions` in your Chrome.
23 | - Check `Developer mode`
24 | - Select `Load unpacked extensions...`
25 | - Open `$CHROMEADB_HOME/src`
26 |
27 |
28 |
29 | How to build
30 | ------------
31 |
32 | - `$ npm install -g grunt-cli`
33 | - `$ npm install`
34 | - `$ grunt`
35 | - Check a zip file in `$CHROMEADB_HOME/package`
36 |
37 |
38 |
39 | Pre-requirements
40 | ----------------
41 |
42 | - ADB included in [Android SDK][1]
43 | - Start ADB daemon
44 | - `$ adb start-server`
45 | - ChromeADB for Android (Optional)
46 | - for Mousepad
47 | - Go to [Github][github] or [PlayStore][chromeadb_for_android]
48 |
49 |
50 |
51 | How to use
52 | ----------
53 |
54 | Are you an Android developer?
55 | No description needed anymore :)
56 |
57 |
58 |
59 | Chrome Store
60 | ------------
61 |
62 | [][2]
63 |
64 |
65 |
66 | References
67 | ----------
68 |
69 | - [ADB OVERVIEW.txt][3]
70 | - [ADB SERVICES.txt][4]
71 |
72 |
73 |
74 | License
75 | -------
76 |
77 | BrickSimple Public License 1.0 (Based on the Mozilla Public License Version 2.0). See the `LICENSE` file.
78 |
79 |
80 |
81 |
82 | [0]: http://www.nodejs.org/ "node.js"
83 | [1]: http://developer.android.com/sdk/index.html "android sdk"
84 | [2]: https://chrome.google.com/webstore/detail/chrome-adb/fhdoijgfljahinnpbolfdimpcfoicmnm "chrome store"
85 | [3]: https://github.com/android/platform_system_core/blob/master/adb/OVERVIEW.TXT "adb overview"
86 | [4]: https://github.com/android/platform_system_core/blob/master/adb/SERVICES.TXT "adb services"
87 |
88 | [chromeadb_for_android]: https://play.google.com/store/apps/details?id=io.github.importre.android.chromeadb
89 | [github]: https://github.com/importre/chromeadb_for_android
90 |
--------------------------------------------------------------------------------
/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "authors": [
3 | "importre"
4 | ],
5 | "dependencies": {
6 | "angular": "~1.2.16",
7 | "angular-route": "~1.2.16",
8 | "angular-sanitize": "~1.2.16",
9 | "bootstrap": "~3.0.2",
10 | "jqplot": "*"
11 | },
12 | "description": "Chrome ADB(Android Debug Bridge) Client",
13 | "homepage": "https://github.com/importre/chromeadb",
14 | "license": "BSD",
15 | "name": "ChromeADB",
16 | "version": "0.4.2",
17 | "devDependencies": {
18 | "angular-mocks": "~1.2.17"
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/change_version.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 |
3 | __author__ = 'importre'
4 |
5 | import argparse
6 | import json
7 | import re
8 | import sys
9 |
10 | json_files = ('package.json', 'bower.json', 'src/manifest.json',)
11 |
12 | def get_argparser():
13 | parser = argparse.ArgumentParser(description='Modify ChromeADB version.')
14 | parser.add_argument('-n', help='new version. ex) 1.0.0')
15 | return parser
16 |
17 | def is_valid_version(ver):
18 | if not ver or not re.match('^(\d+\.){2}\d+$', ver.strip()):
19 | return False
20 | return True
21 |
22 | if __name__ == '__main__':
23 | parser = get_argparser()
24 | ver = parser.parse_args().n
25 |
26 | if not is_valid_version(ver):
27 | parser.print_help()
28 | sys.exit(1)
29 |
30 | json_data = []
31 | try:
32 | ver
33 | for json_file in json_files:
34 | with open(json_file) as fin:
35 | data = json.load(fin, 'utf_8')
36 | data['version'] = ver
37 | json_data.append(data)
38 | except Exception as why:
39 | print why
40 | sys.exit(1)
41 |
42 | for name, data in zip(json_files, json_data):
43 | with open(name, 'w') as fout:
44 | json.dump(data, fout, indent=4, separators=(',', ': ',), sort_keys=True)
45 | pass
46 |
--------------------------------------------------------------------------------
/karma.conf.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = function(config) {
4 | config.set({
5 | frameworks: ['jasmine'],
6 | autoWatch : true,
7 | files : [
8 | 'src/bower_components/angular/angular.js',
9 | 'src/bower_components/angular-mocks/angular-mocks.js',
10 | 'src/scripts/**/*.js',
11 | 'test/**/*.js'
12 | ],
13 | exclude: [
14 | 'src/scripts/background.js'
15 | ]
16 | });
17 | };
18 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "author": "importre & BrickSimple",
3 | "dependencies": {},
4 | "description": "Chrome ADB (Android Debug Bridge) Client",
5 | "devDependencies": {
6 | "grunt": "~0.4.1",
7 | "grunt-contrib-clean": "~0.5.0",
8 | "grunt-contrib-compress": "~0.5.2",
9 | "grunt-contrib-copy": "~0.4.1",
10 | "load-grunt-tasks": "~0.2.0",
11 | "grunt-contrib-watch": "^0.6.1",
12 | "grunt-contrib-connect": "^0.7.1",
13 | "time-grunt": "^0.3.2",
14 | "grunt-contrib-jshint": "^0.10.0",
15 | "karma": "^0.12.16",
16 | "karma-jasmine": "^0.1.5",
17 | "grunt-karma": "^0.8.3",
18 | "karma-phantomjs-launcher": "^0.1.4"
19 | },
20 | "repository": {
21 | "type": "git",
22 | "url": "https://github.com/importre/chromeadb"
23 | },
24 | "name": "ChromeADB",
25 | "scripts": {
26 | "test": "grunt test"
27 | },
28 | "version": "0.4.2"
29 | }
30 |
--------------------------------------------------------------------------------
/src/assets/BrickLogo2011.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/importre/chromeadb/de2d4f0205b6819135cb2064babf87e8a8313b87/src/assets/BrickLogo2011.png
--------------------------------------------------------------------------------
/src/assets/ChromeADBLogo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/importre/chromeadb/de2d4f0205b6819135cb2064babf87e8a8313b87/src/assets/ChromeADBLogo.png
--------------------------------------------------------------------------------
/src/assets/chromeadb_screenshot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/importre/chromeadb/de2d4f0205b6819135cb2064babf87e8a8313b87/src/assets/chromeadb_screenshot.png
--------------------------------------------------------------------------------
/src/assets/github.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/importre/chromeadb/de2d4f0205b6819135cb2064babf87e8a8313b87/src/assets/github.png
--------------------------------------------------------------------------------
/src/assets/icon_016.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/importre/chromeadb/de2d4f0205b6819135cb2064babf87e8a8313b87/src/assets/icon_016.png
--------------------------------------------------------------------------------
/src/assets/icon_032.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/importre/chromeadb/de2d4f0205b6819135cb2064babf87e8a8313b87/src/assets/icon_032.png
--------------------------------------------------------------------------------
/src/assets/icon_048.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/importre/chromeadb/de2d4f0205b6819135cb2064babf87e8a8313b87/src/assets/icon_048.png
--------------------------------------------------------------------------------
/src/assets/icon_128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/importre/chromeadb/de2d4f0205b6819135cb2064babf87e8a8313b87/src/assets/icon_128.png
--------------------------------------------------------------------------------
/src/assets/icon_256.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/importre/chromeadb/de2d4f0205b6819135cb2064babf87e8a8313b87/src/assets/icon_256.png
--------------------------------------------------------------------------------
/src/assets/icon_512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/importre/chromeadb/de2d4f0205b6819135cb2064babf87e8a8313b87/src/assets/icon_512.png
--------------------------------------------------------------------------------
/src/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |