• Home
Name Date Size #Lines LOC

..--

binder/android/os/03-May-2024-15929

tests/03-May-2024-2,5421,872

.clang-formatD03-May-2024288 1412

Android.bpD03-May-20244.5 KiB196184

AndroidTest.xmlD03-May-20241.2 KiB2712

DumpPool.cppD03-May-20245.3 KiB185144

DumpPool.hD03-May-20246.8 KiB21187

DumpstateInternal.cppD03-May-20246.7 KiB198156

DumpstateInternal.hD03-May-20241.9 KiB6331

DumpstateService.cppD03-May-20248.3 KiB212156

DumpstateService.hD03-May-20242 KiB6431

DumpstateUtil.cppD03-May-202414.3 KiB436332

DumpstateUtil.hD03-May-20247.3 KiB23182

OWNERSD03-May-202478 64

README.mdD03-May-20242.8 KiB13289

TEST_MAPPINGD03-May-2024443 2928

TaskQueue.cppD03-May-20241.1 KiB4120

TaskQueue.hD03-May-20242.1 KiB7730

bugreport-format.mdD03-May-20245.5 KiB12397

dumpstate.cppD03-May-2024163.6 KiB4,2533,175

dumpstate.hD03-May-202422.2 KiB654240

dumpstate.rcD03-May-2024719 2521

dumpstate_smoke_test.xmlD03-May-20241.4 KiB3215

dumpstate_test.xmlD03-May-20241.4 KiB3015

main.cppD03-May-20242.1 KiB6936

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