| /* |
| * Copyright (C) 2017 The Android Open Source Project |
| * |
| * 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. |
| */ |
| |
| syntax = "proto2"; |
| import "frameworks/base/core/proto/android/content/intent.proto"; |
| import "frameworks/base/core/proto/android/server/intentresolver.proto"; |
| import "frameworks/base/core/proto/android/server/windowmanagerservice.proto"; |
| import "frameworks/base/core/proto/android/graphics/rect.proto"; |
| import "frameworks/base/core/proto/android/os/looper.proto"; |
| |
| package com.android.server.am.proto; |
| |
| option java_multiple_files = true; |
| |
| message ActivityManagerServiceProto { |
| optional ActivityStackSupervisorProto activities = 1; |
| |
| optional BroadcastProto broadcasts = 2; |
| |
| optional ServiceProto services = 3; |
| |
| optional ProcessProto processes = 4; |
| } |
| |
| message ActivityStackSupervisorProto { |
| optional .com.android.server.wm.proto.ConfigurationContainerProto configuration_container = 1; |
| repeated ActivityDisplayProto displays = 2; |
| optional KeyguardControllerProto keyguard_controller = 3; |
| optional int32 focused_stack_id = 4; |
| optional .com.android.server.wm.proto.IdentifierProto resumed_activity = 5; |
| } |
| |
| /* represents ActivityStackSupervisor.ActivityDisplay */ |
| message ActivityDisplayProto { |
| optional .com.android.server.wm.proto.ConfigurationContainerProto configuration_container = 1; |
| optional int32 id = 2; |
| repeated ActivityStackProto stacks = 3; |
| } |
| |
| message ActivityStackProto { |
| optional .com.android.server.wm.proto.ConfigurationContainerProto configuration_container = 1; |
| optional int32 id = 2; |
| repeated TaskRecordProto tasks = 3; |
| optional .com.android.server.wm.proto.IdentifierProto resumed_activity = 4; |
| optional int32 display_id = 5; |
| optional bool fullscreen = 6; |
| optional .android.graphics.RectProto bounds = 7; |
| } |
| |
| message TaskRecordProto { |
| optional .com.android.server.wm.proto.ConfigurationContainerProto configuration_container = 1; |
| optional int32 id = 2; |
| repeated ActivityRecordProto activities = 3; |
| optional int32 stack_id = 4; |
| optional .android.graphics.RectProto last_non_fullscreen_bounds = 5; |
| optional string real_activity = 6; |
| optional string orig_activity = 7; |
| optional int32 activity_type = 8; |
| optional int32 return_to_type = 9; |
| optional int32 resize_mode = 10; |
| optional bool fullscreen = 11; |
| optional .android.graphics.RectProto bounds = 12; |
| optional int32 min_width = 13; |
| optional int32 min_height = 14; |
| } |
| |
| message ActivityRecordProto { |
| optional .com.android.server.wm.proto.ConfigurationContainerProto configuration_container = 1; |
| optional .com.android.server.wm.proto.IdentifierProto identifier = 2; |
| optional string state = 3; |
| optional bool visible = 4; |
| optional bool front_of_task = 5; |
| optional int32 proc_id = 6; |
| } |
| |
| message KeyguardControllerProto { |
| optional bool keyguard_showing = 1; |
| optional bool keyguard_occluded = 2; |
| } |
| |
| message BroadcastProto { |
| repeated ReceiverListProto receiver_list = 1; |
| |
| optional .com.android.server.IntentResolverProto receiver_resolver = 2; |
| |
| repeated BroadcastQueueProto broadcast_queue = 3; |
| |
| repeated StickyBroadcastProto sticky_broadcasts = 4; |
| |
| message MainHandler { |
| optional string handler = 1; |
| optional .android.os.LooperProto looper = 2; |
| } |
| optional MainHandler handler = 5; |
| } |
| |
| message ReceiverListProto { |
| optional ProcessRecordProto app = 1; |
| optional int32 pid = 2; |
| optional int32 uid = 3; |
| optional int32 user = 4; |
| optional BroadcastRecordProto current = 5; |
| optional bool linked_to_death = 6; |
| repeated BroadcastFilterProto filters = 7; |
| optional string hex_hash = 8; // this hash is used to find the object in IntentResolver |
| } |
| |
| message ProcessRecordProto { |
| optional int32 pid = 1; |
| optional string process_name = 2; |
| optional int32 uid = 3; |
| optional int32 user_id = 4; |
| optional int32 app_id = 5; |
| optional int32 isolated_app_id = 6; |
| } |
| |
| message BroadcastRecordProto { |
| optional int32 user_id = 1; |
| optional string intent_action = 2; |
| } |
| |
| message BroadcastFilterProto { |
| optional .android.content.IntentFilterProto intent_filter = 1; |
| optional string required_permission = 2; |
| optional string hex_hash = 3; // used to find the object in IntentResolver |
| optional int32 owning_user_id = 4; |
| } |
| |
| message BroadcastQueueProto { |
| optional string queue_name = 1; |
| repeated BroadcastRecordProto parallel_broadcasts = 2; |
| repeated BroadcastRecordProto ordered_broadcasts = 3; |
| optional BroadcastRecordProto pending_broadcast = 4; |
| repeated BroadcastRecordProto historical_broadcasts = 5; |
| |
| message BroadcastSummary { |
| optional .android.content.IntentProto intent = 1; |
| optional int64 enqueue_clock_time_ms = 2; |
| optional int64 dispatch_clock_time_ms = 3; |
| optional int64 finish_clock_time_ms = 4; |
| } |
| repeated BroadcastSummary historical_broadcasts_summary = 6; |
| } |
| |
| message StickyBroadcastProto { |
| optional int32 user = 1; |
| |
| message StickyAction { |
| optional string name = 1; |
| repeated .android.content.IntentProto intents = 2; |
| } |
| repeated StickyAction actions = 2; |
| } |
| |
| message ServiceProto { |
| // TODO: "dumpsys activity --proto services" |
| } |
| |
| message ProcessProto { |
| // TODO: "dumpsys activity --proto processes" |
| } |