1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136
|
/*
* 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";
package android.service.pm;
import "frameworks/base/core/proto/android/content/featureinfo.proto";
import "frameworks/base/core/proto/android/privacy.proto";
option java_multiple_files = true;
option java_outer_classname = "PackageServiceProto";
message PackageServiceDumpProto {
option (android.msg_privacy).dest = DEST_AUTOMATIC;
message PackageShortProto {
option (android.msg_privacy).dest = DEST_AUTOMATIC;
// Name of package. e.g. "com.android.providers.telephony".
optional string name = 1;
// UID for this package as assigned by Android OS.
optional int32 uid = 2;
}
message SharedLibraryProto {
option (android.msg_privacy).dest = DEST_AUTOMATIC;
optional string name = 1;
// True if library path is not null (jar), false otherwise (apk)
optional bool is_jar = 2;
// Should be filled if is_jar is true
optional string path = 3;
// Should be filled if is_jar is false
optional string apk = 4;
}
message SharedUserProto {
option (android.msg_privacy).dest = DEST_AUTOMATIC;
optional int32 uid = 1;
// Name of the shared UID. eg: android.uid.bluetooth
optional string name = 2;
}
// Installed packages.
optional PackageShortProto required_verifier_package = 1;
optional PackageShortProto verifier_package = 2;
repeated SharedLibraryProto shared_libraries = 3;
repeated android.content.pm.FeatureInfoProto features = 4;
repeated PackageProto packages = 5;
repeated SharedUserProto shared_users = 6;
// Messages from the settings problem file
repeated string messages = 7 [ (android.privacy).dest = DEST_EXPLICIT ];
}
message PackageProto {
option (android.msg_privacy).dest = DEST_AUTOMATIC;
message SplitProto {
option (android.msg_privacy).dest = DEST_AUTOMATIC;
// The split name of package, e.g. base
optional string name = 1;
optional int32 revision_code = 2;
}
message UserInfoProto {
option (android.msg_privacy).dest = DEST_AUTOMATIC;
enum InstallType {
NOT_INSTALLED_FOR_USER = 0;
FULL_APP_INSTALL = 1;
INSTANT_APP_INSTALL = 2;
}
// Enum values gotten from PackageManger.java
enum EnabledState {
// This component or application is in its default enabled state
// (as specified in its manifest).
COMPONENT_ENABLED_STATE_DEFAULT = 0;
// This component or application has been explictily enabled, regardless
// of what it has specified in its manifest.
COMPONENT_ENABLED_STATE_ENABLED = 1;
// This component or application has been explicitly disabled, regardless of
// what it has specified in its manifest.
COMPONENT_ENABLED_STATE_DISABLED = 2;
// The user has explicitly disabled the application, regardless of what it has
// specified in its manifest.
COMPONENT_ENABLED_STATE_DISABLED_USER = 3;
// This application should be considered, until the point where the user actually
// wants to use it.
COMPONENT_ENABLED_STATE_DISABLED_UNTIL_USED = 4;
}
optional int32 id = 1;
optional InstallType install_type = 2;
// Is the app restricted by owner / admin
optional bool is_hidden = 3;
optional bool is_suspended = 4;
optional bool is_stopped = 5;
optional bool is_launched = 6;
optional EnabledState enabled_state = 7;
optional string last_disabled_app_caller = 8;
optional string suspending_package = 9;
optional int32 distraction_flags = 10;
}
// Name of package. e.g. "com.android.providers.telephony".
optional string name = 1;
// UID for this package as assigned by Android OS.
optional int32 uid = 2;
// Package's reported version.
optional int32 version_code = 3;
// Package's reported version string (what's displayed to the user).
optional string version_string = 4;
// UTC timestamp of install
optional int64 install_time_ms = 5;
// Millisecond UTC timestamp of latest update adjusted to Google's server clock.
optional int64 update_time_ms = 6;
// From "dumpsys package" - name of package which installed this one.
// Typically "" if system app or "com.android.vending" if Play Store.
optional string installer_name = 7;
// Split APKs.
repeated SplitProto splits = 8;
// Per-user package info.
repeated UserInfoProto users = 9;
}
|