| /* |
| * 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 = "proto3"; |
| |
| package android.service.pm; |
| |
| option java_multiple_files = true; |
| option java_outer_classname = "PackageServiceProto"; |
| |
| message PackageServiceDumpProto { |
| message PackageShortProto { |
| // Name of package. e.g. "com.android.providers.telephony". |
| string name = 1; |
| // UID for this package as assigned by Android OS. |
| int32 uid = 2; |
| } |
| message SharedLibraryProto { |
| string name = 1; |
| // True if library path is not null (jar), false otherwise (apk) |
| bool is_jar = 2; |
| // Should be filled if is_jar is true |
| string path = 3; |
| // Should be filled if is_jar is false |
| string apk = 4; |
| } |
| message FeatureProto { |
| string name = 1; |
| int32 version = 2; |
| } |
| message SharedUserProto { |
| int32 user_id = 1; |
| string name = 2; |
| } |
| |
| // Installed packages. |
| PackageShortProto required_verifier_package = 1; |
| PackageShortProto verifier_package = 2; |
| repeated SharedLibraryProto shared_libraries = 3; |
| repeated FeatureProto features = 4; |
| repeated PackageProto packages = 5; |
| repeated SharedUserProto shared_users = 6; |
| // Messages from the settings problem file |
| repeated string messages = 7; |
| } |
| |
| message PackageProto { |
| message SplitProto { |
| string name = 1; |
| int32 revision_code = 2; |
| } |
| message UserInfoProto { |
| 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; |
| } |
| |
| int32 id = 1; |
| InstallType install_type = 2; |
| // Is the app restricted by owner / admin |
| bool is_hidden = 3; |
| bool is_suspended = 4; |
| bool is_stopped = 5; |
| bool is_launched = 6; |
| EnabledState enabled_state = 7; |
| string last_disabled_app_caller = 8; |
| } |
| |
| // Name of package. e.g. "com.android.providers.telephony". |
| string name = 1; |
| // UID for this package as assigned by Android OS. |
| int32 uid = 2; |
| // Package's reported version. |
| int32 version_code = 3; |
| // Package's reported version string (what's displayed to the user). |
| string version_string = 4; |
| // UTC timestamp of install |
| int64 install_time_ms = 5; |
| // Millisecond UTC timestamp of latest update adjusted to Google's server clock. |
| 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. |
| string installer_name = 7; |
| // Split APKs. |
| repeated SplitProto splits = 8; |
| // Per-user package info. |
| repeated UserInfoProto users = 9; |
| } |