README.md 3.8 KB
Newer Older
K
kevinkong 已提交
1
## Emmagee - a practical, handy performance test tool for specified Android App
2

K
kevinkong 已提交
3 4
Emmagee is a practical, handy performance test tool for specified Android App, which can monitor CPU, memory, 
network traffic, battery current and status([Some devices are not supported](https://github.com/NetEase/Emmagee/wiki/Some-devices-are-not-supported)), new features such as top activity and heap size if rooted([Root Toast may continously show](https://github.com/NetEase/Emmagee/wiki/FAQ)), are also supported in the [latest version](https://github.com/NetEase/Emmagee/releases). Additionally, it also provides several cool features such as customizing interval of collecting data,
5 6
rendering real-time process status in a floating window, and much more.

K
kevinkong 已提交
7 8 9 10
 * Homepage: https://github.com/NetEase/Emmagee
 * Wiki: https://github.com/NetEase/Emmagee/wiki
 * Issues: https://github.com/NetEase/Emmagee/issues
 * FAQ: https://github.com/NetEase/Emmagee/wiki/FAQ
11 12
 * Tags: Android, Java 

K
kevinkong 已提交
13
<img src="https://github.com/andrewleo/pictures/blob/master/Emmagee/V2.0/homepage.png" width="180px" />&nbsp;<img src="https://github.com/andrewleo/pictures/blob/master/Emmagee/V2.0/settings.png" width="180px" />&nbsp;<img src="https://github.com/andrewleo/pictures/blob/master/Emmagee/V2.0/mailsettings.png" width="180px" />
14 15 16

## Why should I use Emmagee?

K
kevinkong 已提交
17
Unlike most other performance test tools that only do system-level monitoring, Emmagee provides the ability to monitor any single App. Other advantages that
18 19 20
you should not miss:
* Open source
* Easy to use
K
kevinkong 已提交
21 22
* Process-specific monitoring, including CPU, memory, network traffic, battery current, launching time and status
* Floating window that renders real-time process status
23
* CSV format report that can be converted into any other format you want
K
kevinkong 已提交
24
* User-defined collecting interval
25 26 27 28
* Fully support Android 2.2 and above

## How to use Emmagee?

K
kevinkong 已提交
29 30 31
First of all ,you should have Emmagee.apk,download [here](https://github.com/NetEase/Emmagee/releases) or 
build the apk file youself [here](https://github.com/NetEase/Emmagee/wiki/How-to-build-emmage.apk%3F),then :

32 33 34 35 36 37 38 39 40
1. Start Emmagee App
2. Configure interval
3. Select a target process 
4. Click Start button

And Enjoy!

If you want to stop the test, just go back to Emmagee and click Stop button.

K
kevinkong 已提交
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
## Android 5.0 and above

* `Android 5.0 and above`: getRunningTasks() and getRunningAppProcesses() are deprecated and only return your application process, so it is unable to get TopActivity from Android 5.0.
* `Android 7.0`: Google has restricted access to /proc, and also can not get pid of target application from TOP command in Android 7.0, I am so sorry to tell that 7.0 can not be supported.

## Coming Soon
* We want you to decide!

## How to Contribute?

You are welcome to contribute to Emmagee, meanwhile you'd better follow the rules below

* It's *NOT* recommended to submit a pull request directly to Emmagee's `master` branch. `develop` branch is more appropriate
* Follow common Java coding conventions
* Put all Java class files under *com.netease* package
* Add the following [license](#license) in each Java class file

58 59
## Contributors
* NetEase, Inc.
K
kevinkong 已提交
60 61
* [yrom](https://github.com/yrom)
* [LukeOwncloud](https://github.com/LukeOwncloud)
62 63 64 65

## License
(The Apache License)

K
kevinkong 已提交
66
Copyright (c) 2012-2015 NetEase, Inc. and other contributors
67 68 69 70 71 72 73 74 75 76 77 78

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.