• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1Conventions for the protos in this directory:
2
31. As in the rest of Android, use 4 spaces to indent instead of 2.
4
51. For protos based on Java files, use the same package as the Java file. For
6   example, `com.android.server.thing` instead of `com.android.server.thing.proto`.
7
81. If the proto describes the top level output of dumpsys, it should contain
9   `Dump`. This makes it easy to understand that the proto is the dumpsys output
10   of a certain service, not the data structure of that service, e.g.
11   `WindowManagerServiceDumpProto` vs `WindowManagerServiceProto`.
12
13   * Inner messages whose containing messages have the `Proto` suffix do not
14     need to have a `Proto` suffix. E.g:
15
16```
17message FooProto {
18    message Bar {
19        ...
20    }
21}
22```
23
24     vs
25
26```
27message FooProto {
28    message BarProto {
29        ...
30    }
31}
32```
33
341. If the proto represents the structure of an object, it should have `Proto` as
35   its suffix. Please also include the full package path of the original object
36   as a comment to the proto message.
37
381. Include units in the field names. For example, `screen_time_ms` vs
39   `screen_time`, or `file_size_bytes` or `file_size_mebibytes` vs `file_size`.
40
411. Leave field numbers 50,000 - 100,000 reserved for OEMs.
42