README.md
1<!-- Copyright 2015 The Chromium Authors. All rights reserved.
2 Use of this source code is governed by a BSD-style license that can be
3 found in the LICENSE file.
4-->
5## devil
6
7
8
9devil (device interaction layer) is a library used by the Chromium developers to
10interact with Android devices. It currently supports SDK level 16 and above.
11
12## Interfaces
13
14devil provides python APIs:
15 - [`devil.android.adb_wrapper`](docs/adb_wrapper.md) provides a thin wrapper
16 around the adb binary. Most functions and methods have direct analogues on
17 the adb command-line.
18 - [`devil.android.device_utils`](docs/device_utils.md) provides higher-level
19 functionality built on top of `adb_wrapper`. **This is the primary
20 mechanism through which chromium's scripts interact with devices.**
21
22## Utilities
23
24devil also provides command-line utilities:
25 - [`devil/utils/markdown.py`](docs/markdown.md) generated markdown
26 documentation for python modules.
27
28## Constraints and Caveats
29
30devil supports python 2.7. Python 3 compatibility is currently a work in
31progress (see https://crbug.com/1007101).
32
33## Contributing
34
35Please see [our contributor's guide](/CONTRIBUTING.md)
36