activitymanagerservice.proto revision 129fc6ce194659eed25fc37bb382eed61a14b7a7
14346f0a15cc8298d354e5257f81f637399b78514Steven Timotius/*
24346f0a15cc8298d354e5257f81f637399b78514Steven Timotius * Copyright (C) 2017 The Android Open Source Project
34346f0a15cc8298d354e5257f81f637399b78514Steven Timotius *
44346f0a15cc8298d354e5257f81f637399b78514Steven Timotius * Licensed under the Apache License, Version 2.0 (the "License");
54346f0a15cc8298d354e5257f81f637399b78514Steven Timotius * you may not use this file except in compliance with the License.
64346f0a15cc8298d354e5257f81f637399b78514Steven Timotius * You may obtain a copy of the License at
74346f0a15cc8298d354e5257f81f637399b78514Steven Timotius *
84346f0a15cc8298d354e5257f81f637399b78514Steven Timotius *      http://www.apache.org/licenses/LICENSE-2.0
94346f0a15cc8298d354e5257f81f637399b78514Steven Timotius *
104346f0a15cc8298d354e5257f81f637399b78514Steven Timotius * Unless required by applicable law or agreed to in writing, software
114346f0a15cc8298d354e5257f81f637399b78514Steven Timotius * distributed under the License is distributed on an "AS IS" BASIS,
124346f0a15cc8298d354e5257f81f637399b78514Steven Timotius * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
134346f0a15cc8298d354e5257f81f637399b78514Steven Timotius * See the License for the specific language governing permissions and
144346f0a15cc8298d354e5257f81f637399b78514Steven Timotius * limitations under the License.
154346f0a15cc8298d354e5257f81f637399b78514Steven Timotius */
164346f0a15cc8298d354e5257f81f637399b78514Steven Timotius
174346f0a15cc8298d354e5257f81f637399b78514Steven Timotiussyntax = "proto3";
184346f0a15cc8298d354e5257f81f637399b78514Steven Timotius
19129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jinimport "frameworks/base/core/proto/android/content/intent.proto";
20129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jinimport "frameworks/base/core/proto/android/server/intentresolver.proto";
214346f0a15cc8298d354e5257f81f637399b78514Steven Timotiusimport "frameworks/base/core/proto/android/server/windowmanagerservice.proto";
224346f0a15cc8298d354e5257f81f637399b78514Steven Timotiusimport "frameworks/base/core/proto/android/graphics/rect.proto";
23129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jinimport "frameworks/base/core/proto/android/os/looper.proto";
244346f0a15cc8298d354e5257f81f637399b78514Steven Timotius
254346f0a15cc8298d354e5257f81f637399b78514Steven Timotiuspackage com.android.server.am.proto;
264346f0a15cc8298d354e5257f81f637399b78514Steven Timotius
274346f0a15cc8298d354e5257f81f637399b78514Steven Timotiusoption java_multiple_files = true;
284346f0a15cc8298d354e5257f81f637399b78514Steven Timotius
294346f0a15cc8298d354e5257f81f637399b78514Steven Timotiusmessage ActivityManagerServiceProto {
304346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  ActivityStackSupervisorProto activities = 1;
31129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin
32129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  BroadcastProto broadcasts = 2;
33129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin
34129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  ServiceProto services = 3;
35129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin
36129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  ProcessProto processes = 4;
374346f0a15cc8298d354e5257f81f637399b78514Steven Timotius}
384346f0a15cc8298d354e5257f81f637399b78514Steven Timotius
394346f0a15cc8298d354e5257f81f637399b78514Steven Timotiusmessage ActivityStackSupervisorProto {
404346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  .com.android.server.wm.proto.ConfigurationContainerProto configuration_container = 1;
414346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  repeated ActivityDisplayProto displays = 2;
424346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  KeyguardControllerProto keyguard_controller = 3;
434346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  int32 focused_stack_id = 4;
444346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  .com.android.server.wm.proto.IdentifierProto resumed_activity = 5;
454346f0a15cc8298d354e5257f81f637399b78514Steven Timotius}
464346f0a15cc8298d354e5257f81f637399b78514Steven Timotius
474346f0a15cc8298d354e5257f81f637399b78514Steven Timotius/* represents ActivityStackSupervisor.ActivityDisplay */
484346f0a15cc8298d354e5257f81f637399b78514Steven Timotiusmessage ActivityDisplayProto {
494346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  .com.android.server.wm.proto.ConfigurationContainerProto configuration_container = 1;
504346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  int32 id = 2;
514346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  repeated ActivityStackProto stacks = 3;
524346f0a15cc8298d354e5257f81f637399b78514Steven Timotius}
534346f0a15cc8298d354e5257f81f637399b78514Steven Timotius
544346f0a15cc8298d354e5257f81f637399b78514Steven Timotiusmessage ActivityStackProto {
554346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  .com.android.server.wm.proto.ConfigurationContainerProto configuration_container = 1;
564346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  int32 id = 2;
574346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  repeated TaskRecordProto tasks = 3;
584346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  .com.android.server.wm.proto.IdentifierProto resumed_activity = 4;
594346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  int32 display_id = 5;
604346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  bool fullscreen = 6;
614346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  .android.graphics.RectProto bounds = 7;
624346f0a15cc8298d354e5257f81f637399b78514Steven Timotius}
634346f0a15cc8298d354e5257f81f637399b78514Steven Timotius
644346f0a15cc8298d354e5257f81f637399b78514Steven Timotiusmessage TaskRecordProto {
654346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  .com.android.server.wm.proto.ConfigurationContainerProto configuration_container = 1;
664346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  int32 id = 2;
674346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  repeated ActivityRecordProto activities = 3;
684346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  int32 stack_id = 4;
694346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  .android.graphics.RectProto last_non_fullscreen_bounds = 5;
704346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  string real_activity = 6;
714346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  string orig_activity = 7;
724346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  int32 activity_type = 8;
734346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  int32 return_to_type = 9;
744346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  int32 resize_mode = 10;
754346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  bool fullscreen = 11;
764346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  .android.graphics.RectProto bounds = 12;
774346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  int32 min_width = 13;
784346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  int32 min_height = 14;
794346f0a15cc8298d354e5257f81f637399b78514Steven Timotius}
804346f0a15cc8298d354e5257f81f637399b78514Steven Timotius
814346f0a15cc8298d354e5257f81f637399b78514Steven Timotiusmessage ActivityRecordProto {
824346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  .com.android.server.wm.proto.ConfigurationContainerProto configuration_container = 1;
834346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  .com.android.server.wm.proto.IdentifierProto identifier = 2;
844346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  string state = 3;
854346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  bool visible = 4;
864346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  bool front_of_task = 5;
874346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  int32 proc_id = 6;
884346f0a15cc8298d354e5257f81f637399b78514Steven Timotius}
894346f0a15cc8298d354e5257f81f637399b78514Steven Timotius
904346f0a15cc8298d354e5257f81f637399b78514Steven Timotiusmessage KeyguardControllerProto {
914346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  bool keyguard_showing = 1;
924346f0a15cc8298d354e5257f81f637399b78514Steven Timotius  bool keyguard_occluded = 2;
93129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin}
94129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin
95129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jinmessage BroadcastProto {
96129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  repeated ReceiverListProto  receiver_list = 1;
97129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin
98129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  .com.android.server.IntentResolverProto receiver_resolver = 2;
99129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin
100129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  repeated BroadcastQueueProto broadcast_queue = 3;
101129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin
102129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  repeated StickyBroadcastProto sticky_broadcasts = 4;
103129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin
104129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  message MainHandler {
105129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin    string handler = 1;
106129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin    .android.os.LooperProto looper = 2;
107129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  }
108129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  MainHandler handler = 5;
109129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin}
110129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin
111129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jinmessage ReceiverListProto {
112129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  ProcessRecordProto app = 1;
113129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  int32 pid = 2;
114129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  int32 uid = 3;
115129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  int32 user = 4;
116129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  BroadcastRecordProto current = 5;
117129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  bool linked_to_death = 6;
118129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  repeated BroadcastFilterProto filters = 7;
119129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  string hex_hash = 8; // this hash is used to find the object in IntentResolver
120129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin}
121129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin
122129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jinmessage ProcessRecordProto {
123129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  int32 pid = 1;
124129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  string process_name = 2;
125129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  int32 uid = 3;
126129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  int32 user_id = 4;
127129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  int32 app_id = 5;
128129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  int32 isolated_app_id = 6;
129129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin}
130129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin
131129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jinmessage BroadcastRecordProto {
132129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  int32 user_id = 1;
133129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  string intent_action = 2;
134129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin}
135129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin
136129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jinmessage BroadcastFilterProto {
137129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  .android.content.IntentFilterProto intent_filter = 1;
138129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  string required_permission = 2;
139129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  string hex_hash = 3; // used to find the object in IntentResolver
140129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  int32 owning_user_id = 4;
141129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin}
142129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin
143129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jinmessage BroadcastQueueProto {
144129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  string queue_name = 1;
145129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  repeated BroadcastRecordProto parallel_broadcasts = 2;
146129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  repeated BroadcastRecordProto ordered_broadcasts = 3;
147129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  BroadcastRecordProto pending_broadcast = 4;
148129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  repeated BroadcastRecordProto historical_broadcasts = 5;
149129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin
150129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  message BroadcastSummary {
151129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin    .android.content.IntentProto intent = 1;
152129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin    int64 enqueue_clock_time_ms = 2;
153129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin    int64 dispatch_clock_time_ms = 3;
154129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin    int64 finish_clock_time_ms = 4;
155129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  }
156129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  repeated BroadcastSummary historical_broadcasts_summary = 6;
157129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin}
158129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin
159129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jinmessage StickyBroadcastProto {
160129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  int32 user = 1;
161129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin
162129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  message StickyAction {
163129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin    string name = 1;
164129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin    repeated .android.content.IntentProto intents = 2;
165129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  }
166129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  repeated StickyAction actions = 2;
167129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin}
168129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin
169129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jinmessage ServiceProto {
170129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  // TODO: "dumpsys activity --proto services"
171129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin}
172129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin
173129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jinmessage ProcessProto {
174129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin  // TODO: "dumpsys activity --proto processes"
175129fc6ce194659eed25fc37bb382eed61a14b7a7Yi Jin}
176