Name | Date | Size | #Lines | LOC | ||
---|---|---|---|---|---|---|
.. | - | - | ||||
binder/android/os/ | 03-May-2024 | - | 159 | 29 | ||
tests/ | 03-May-2024 | - | 2,542 | 1,872 | ||
.clang-format | D | 03-May-2024 | 288 | 14 | 12 | |
Android.bp | D | 03-May-2024 | 4.5 KiB | 196 | 184 | |
AndroidTest.xml | D | 03-May-2024 | 1.2 KiB | 27 | 12 | |
DumpPool.cpp | D | 03-May-2024 | 5.3 KiB | 185 | 144 | |
DumpPool.h | D | 03-May-2024 | 6.8 KiB | 211 | 87 | |
DumpstateInternal.cpp | D | 03-May-2024 | 6.7 KiB | 198 | 156 | |
DumpstateInternal.h | D | 03-May-2024 | 1.9 KiB | 63 | 31 | |
DumpstateService.cpp | D | 03-May-2024 | 8.3 KiB | 212 | 156 | |
DumpstateService.h | D | 03-May-2024 | 2 KiB | 64 | 31 | |
DumpstateUtil.cpp | D | 03-May-2024 | 14.3 KiB | 436 | 332 | |
DumpstateUtil.h | D | 03-May-2024 | 7.3 KiB | 231 | 82 | |
OWNERS | D | 03-May-2024 | 78 | 6 | 4 | |
README.md | D | 03-May-2024 | 2.8 KiB | 132 | 89 | |
TEST_MAPPING | D | 03-May-2024 | 443 | 29 | 28 | |
TaskQueue.cpp | D | 03-May-2024 | 1.1 KiB | 41 | 20 | |
TaskQueue.h | D | 03-May-2024 | 2.1 KiB | 77 | 30 | |
bugreport-format.md | D | 03-May-2024 | 5.5 KiB | 123 | 97 | |
dumpstate.cpp | D | 03-May-2024 | 163.6 KiB | 4,253 | 3,175 | |
dumpstate.h | D | 03-May-2024 | 22.2 KiB | 654 | 240 | |
dumpstate.rc | D | 03-May-2024 | 719 | 25 | 21 | |
dumpstate_smoke_test.xml | D | 03-May-2024 | 1.4 KiB | 32 | 15 | |
dumpstate_test.xml | D | 03-May-2024 | 1.4 KiB | 30 | 15 | |
main.cpp | D | 03-May-2024 | 2.1 KiB | 69 | 36 |
README.md
1# `dumpstate` development tips 2 3## To build `dumpstate` 4 5Do a full build first: 6 7``` 8m -j dumpstate 9``` 10 11Then incremental ones: 12 13``` 14mmm -j frameworks/native/cmds/dumpstate 15``` 16 17If you're working on device-specific code, you might need to build them as well. 18Example: 19 20``` 21mmm -j frameworks/native/cmds/dumpstate device/acme/secret_device/dumpstate/ hardware/interfaces/dumpstate 22``` 23 24## To build, deploy, and take a bugreport 25 26``` 27mmm -j frameworks/native/cmds/dumpstate && adb push ${OUT}/system/bin/dumpstate system/bin && adb push ${OUT}/system/lib64/*dumpstate*.so /system/lib64/ && adb shell am bug-report 28``` 29 30Make sure that the device is remounted before running the above command. * If 31you're working with `userdebug` variant, you may need to run the following to 32remount your device: 33 34``` 35 adb root && adb remount -R && adb wait-for-device && adb root && adb remount 36``` 37 38* If you're working with `eng` variant, you may need to run the following to 39 remount your device: 40 41 ``` 42 adb root && adb remount 43 ``` 44 45## To build, deploy, and run unit tests 46 47First create `/data/nativetest64`: 48 49``` 50adb shell mkdir /data/nativetest64 51``` 52 53Then run: 54 55``` 56mmm -j frameworks/native/cmds/dumpstate/ && adb push ${OUT}/data/nativetest64/dumpstate_* /data/nativetest64 && adb shell /data/nativetest64/dumpstate_test/dumpstate_test 57``` 58 59And to run just one test (for example, `DumpstateTest.RunCommandNoArgs`): 60 61``` 62mmm -j frameworks/native/cmds/dumpstate/ && adb push ${OUT}/data/nativetest64/dumpstate_test* /data/nativetest64 && adb shell /data/nativetest64/dumpstate_test/dumpstate_test --gtest_filter=DumpstateTest.RunCommandNoArgs 63``` 64 65## To take quick bugreports 66 67``` 68adb shell setprop dumpstate.dry_run true 69``` 70 71## To emulate a device with user build 72 73``` 74adb shell setprop dumpstate.unroot true 75``` 76 77## To change the `dumpstate` version 78 79``` 80adb shell setprop dumpstate.version VERSION_NAME 81``` 82 83Example: 84 85``` 86adb shell setprop dumpstate.version split-dumpsys && adb shell dumpstate -v 87``` 88 89Then to restore the default version: 90 91``` 92adb shell setprop dumpstate.version default 93``` 94 95## To set Bugreport API workflow for bugreport 96 97``` 98adb shell setprop settings_call_bugreport_api true 99``` 100 101## Code style and formatting 102 103Use the style defined at the 104[Google C++ Style Guide](https://google.github.io/styleguide/cppguide.html) and 105make sure to run the following command prior to `repo upload`: 106 107``` 108git clang-format --style=file HEAD~ 109``` 110 111## Useful Bash tricks 112 113``` 114export BR_DIR=/bugreports 115 116alias br='adb shell cmd activity bug-report' 117alias ls_bugs='adb shell ls -l ${BR_DIR}/' 118 119unzip_bug() { 120 adb pull ${BR_DIR}/$1 && emacs $1 && mv $1 /tmp 121} 122 123less_bug() { 124 adb pull ${BR_DIR}/$1 && less $1 && mv $1 /tmp 125} 126 127rm_bugs() { 128 if [ -z "${BR_DIR}" ] ; then echo "Variable BR_DIR not set"; else adb shell rm -rf ${BR_DIR}/*; fi 129} 130 131``` 132