1*d57664e9SAndroid Build Coastguard Worker/* 2*d57664e9SAndroid Build Coastguard Worker * Copyright (C) 2022 The Android Open Source Project 3*d57664e9SAndroid Build Coastguard Worker * 4*d57664e9SAndroid Build Coastguard Worker * Licensed under the Apache License, Version 2.0 (the "License"); 5*d57664e9SAndroid Build Coastguard Worker * you may not use this file except in compliance with the License. 6*d57664e9SAndroid Build Coastguard Worker * You may obtain a copy of the License at 7*d57664e9SAndroid Build Coastguard Worker * 8*d57664e9SAndroid Build Coastguard Worker * http://www.apache.org/licenses/LICENSE-2.0 9*d57664e9SAndroid Build Coastguard Worker * 10*d57664e9SAndroid Build Coastguard Worker * Unless required by applicable law or agreed to in writing, software 11*d57664e9SAndroid Build Coastguard Worker * distributed under the License is distributed on an "AS IS" BASIS, 12*d57664e9SAndroid Build Coastguard Worker * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13*d57664e9SAndroid Build Coastguard Worker * See the License for the specific language governing permissions and 14*d57664e9SAndroid Build Coastguard Worker * limitations under the License. 15*d57664e9SAndroid Build Coastguard Worker */ 16*d57664e9SAndroid Build Coastguard Worker 17*d57664e9SAndroid Build Coastguard Workersyntax = "proto3"; 18*d57664e9SAndroid Build Coastguard Worker 19*d57664e9SAndroid Build Coastguard Workerimport "frameworks/base/tools/aapt2/Resources.proto"; 20*d57664e9SAndroid Build Coastguard Worker 21*d57664e9SAndroid Build Coastguard Workerpackage aapt.pb; 22*d57664e9SAndroid Build Coastguard Worker 23*d57664e9SAndroid Build Coastguard Workeroption java_package = "com.android.aapt"; 24*d57664e9SAndroid Build Coastguard Worker 25*d57664e9SAndroid Build Coastguard Worker// Top level message representing data extracted from the APK for 'apkinfo' 26*d57664e9SAndroid Build Coastguard Worker// command. 27*d57664e9SAndroid Build Coastguard Workermessage ApkInfo { 28*d57664e9SAndroid Build Coastguard Worker message XmlFile { 29*d57664e9SAndroid Build Coastguard Worker string path = 1; 30*d57664e9SAndroid Build Coastguard Worker XmlNode root = 2; 31*d57664e9SAndroid Build Coastguard Worker } 32*d57664e9SAndroid Build Coastguard Worker 33*d57664e9SAndroid Build Coastguard Worker Badging badging = 1; 34*d57664e9SAndroid Build Coastguard Worker ResourceTable resource_table = 2; 35*d57664e9SAndroid Build Coastguard Worker repeated XmlFile xml_files = 3; 36*d57664e9SAndroid Build Coastguard Worker} 37*d57664e9SAndroid Build Coastguard Worker 38*d57664e9SAndroid Build Coastguard Worker// Data extracted from the manifest of the APK. 39*d57664e9SAndroid Build Coastguard Workermessage Badging { 40*d57664e9SAndroid Build Coastguard Worker PackageInfo package = 1; 41*d57664e9SAndroid Build Coastguard Worker Application application = 2; 42*d57664e9SAndroid Build Coastguard Worker UsesSdk uses_sdk = 3; 43*d57664e9SAndroid Build Coastguard Worker // Previously: UsesConfiguration uses_configuration = 4; 44*d57664e9SAndroid Build Coastguard Worker reserved 4; 45*d57664e9SAndroid Build Coastguard Worker SupportsScreen supports_screen = 5; 46*d57664e9SAndroid Build Coastguard Worker SupportsInput supports_input = 6; 47*d57664e9SAndroid Build Coastguard Worker LaunchableActivity launchable_activity = 7; 48*d57664e9SAndroid Build Coastguard Worker LeanbackLaunchableActivity leanback_launchable_activity = 8; 49*d57664e9SAndroid Build Coastguard Worker StaticLibrary static_library = 9; 50*d57664e9SAndroid Build Coastguard Worker SdkLibrary sdk_library = 10; 51*d57664e9SAndroid Build Coastguard Worker Overlay overlay = 11; 52*d57664e9SAndroid Build Coastguard Worker PackageVerifier package_verifier = 12; 53*d57664e9SAndroid Build Coastguard Worker CompatibleScreens compatible_screens = 13; 54*d57664e9SAndroid Build Coastguard Worker Architectures architectures = 14; 55*d57664e9SAndroid Build Coastguard Worker SupportsGlTexture supports_gl_texture = 15; 56*d57664e9SAndroid Build Coastguard Worker Components components = 16; 57*d57664e9SAndroid Build Coastguard Worker 58*d57664e9SAndroid Build Coastguard Worker repeated string locales = 17; 59*d57664e9SAndroid Build Coastguard Worker repeated int32 densities = 18; 60*d57664e9SAndroid Build Coastguard Worker 61*d57664e9SAndroid Build Coastguard Worker repeated UsesPackage uses_packages = 51; 62*d57664e9SAndroid Build Coastguard Worker repeated UsesConfiguration uses_configurations = 52; 63*d57664e9SAndroid Build Coastguard Worker repeated FeatureGroup feature_groups = 53; 64*d57664e9SAndroid Build Coastguard Worker repeated UsesPermission uses_permissions = 54; 65*d57664e9SAndroid Build Coastguard Worker repeated Permission permissions = 55; 66*d57664e9SAndroid Build Coastguard Worker repeated UsesLibrary uses_libraries = 56; 67*d57664e9SAndroid Build Coastguard Worker repeated UsesStaticLibrary uses_static_libraries = 57; 68*d57664e9SAndroid Build Coastguard Worker repeated UsesSdkLibrary uses_sdk_libraries = 58; 69*d57664e9SAndroid Build Coastguard Worker repeated UsesNativeLibrary uses_native_libraries = 59; 70*d57664e9SAndroid Build Coastguard Worker 71*d57664e9SAndroid Build Coastguard Worker repeated Metadata metadata = 62; 72*d57664e9SAndroid Build Coastguard Worker repeated Property properties = 63; 73*d57664e9SAndroid Build Coastguard Worker} 74*d57664e9SAndroid Build Coastguard Worker 75*d57664e9SAndroid Build Coastguard Worker// Information extracted about package from <manifest> and 76*d57664e9SAndroid Build Coastguard Worker// <original-package> tags. 77*d57664e9SAndroid Build Coastguard Workermessage PackageInfo { 78*d57664e9SAndroid Build Coastguard Worker enum InstallLocation { 79*d57664e9SAndroid Build Coastguard Worker DEFAULT_INSTALL_LOCATION = 0; 80*d57664e9SAndroid Build Coastguard Worker AUTO = 1; 81*d57664e9SAndroid Build Coastguard Worker INTERNAL_ONLY = 2; 82*d57664e9SAndroid Build Coastguard Worker PREFER_EXTERNAL = 3; 83*d57664e9SAndroid Build Coastguard Worker } 84*d57664e9SAndroid Build Coastguard Worker 85*d57664e9SAndroid Build Coastguard Worker string package = 1; 86*d57664e9SAndroid Build Coastguard Worker int32 version_code = 2; 87*d57664e9SAndroid Build Coastguard Worker string version_name = 3; 88*d57664e9SAndroid Build Coastguard Worker 89*d57664e9SAndroid Build Coastguard Worker string split = 4; 90*d57664e9SAndroid Build Coastguard Worker 91*d57664e9SAndroid Build Coastguard Worker string platform_version_name = 5; 92*d57664e9SAndroid Build Coastguard Worker string platform_version_code = 6; 93*d57664e9SAndroid Build Coastguard Worker 94*d57664e9SAndroid Build Coastguard Worker int32 compile_sdk_version = 7; 95*d57664e9SAndroid Build Coastguard Worker string compile_sdk_version_codename = 8; 96*d57664e9SAndroid Build Coastguard Worker 97*d57664e9SAndroid Build Coastguard Worker InstallLocation install_location = 9; 98*d57664e9SAndroid Build Coastguard Worker 99*d57664e9SAndroid Build Coastguard Worker string original_package = 10; 100*d57664e9SAndroid Build Coastguard Worker} 101*d57664e9SAndroid Build Coastguard Worker 102*d57664e9SAndroid Build Coastguard Worker// Information extracted from <application> element. 103*d57664e9SAndroid Build Coastguard Workermessage Application { 104*d57664e9SAndroid Build Coastguard Worker string label = 1; 105*d57664e9SAndroid Build Coastguard Worker string icon = 2; 106*d57664e9SAndroid Build Coastguard Worker string banner = 3; 107*d57664e9SAndroid Build Coastguard Worker 108*d57664e9SAndroid Build Coastguard Worker bool test_only = 4; 109*d57664e9SAndroid Build Coastguard Worker bool game = 5; 110*d57664e9SAndroid Build Coastguard Worker bool debuggable = 6; 111*d57664e9SAndroid Build Coastguard Worker 112*d57664e9SAndroid Build Coastguard Worker map<string, string> locale_labels = 8; 113*d57664e9SAndroid Build Coastguard Worker map<int32, string> density_icons = 9; 114*d57664e9SAndroid Build Coastguard Worker} 115*d57664e9SAndroid Build Coastguard Worker 116*d57664e9SAndroid Build Coastguard Worker// Components defined in the APK. 117*d57664e9SAndroid Build Coastguard Workermessage Components { 118*d57664e9SAndroid Build Coastguard Worker bool main = 1; 119*d57664e9SAndroid Build Coastguard Worker bool other_activities = 2; 120*d57664e9SAndroid Build Coastguard Worker bool other_receivers = 3; 121*d57664e9SAndroid Build Coastguard Worker bool other_services = 4; 122*d57664e9SAndroid Build Coastguard Worker 123*d57664e9SAndroid Build Coastguard Worker repeated string provided_components = 5; 124*d57664e9SAndroid Build Coastguard Worker} 125*d57664e9SAndroid Build Coastguard Worker 126*d57664e9SAndroid Build Coastguard Worker// Application's min and target SDKs. 127*d57664e9SAndroid Build Coastguard Workermessage UsesSdk { 128*d57664e9SAndroid Build Coastguard Worker oneof min_sdk { 129*d57664e9SAndroid Build Coastguard Worker int32 min_sdk_version = 2; 130*d57664e9SAndroid Build Coastguard Worker string min_sdk_version_name = 3; 131*d57664e9SAndroid Build Coastguard Worker } 132*d57664e9SAndroid Build Coastguard Worker int32 max_sdk_version = 4; 133*d57664e9SAndroid Build Coastguard Worker oneof target_sdk { 134*d57664e9SAndroid Build Coastguard Worker int32 target_sdk_version = 5; 135*d57664e9SAndroid Build Coastguard Worker string target_sdk_version_name = 6; 136*d57664e9SAndroid Build Coastguard Worker } 137*d57664e9SAndroid Build Coastguard Worker} 138*d57664e9SAndroid Build Coastguard Worker 139*d57664e9SAndroid Build Coastguard Workermessage UsesConfiguration { 140*d57664e9SAndroid Build Coastguard Worker int32 req_touch_screen = 1; 141*d57664e9SAndroid Build Coastguard Worker int32 req_keyboard_type = 2; 142*d57664e9SAndroid Build Coastguard Worker int32 req_hard_keyboard = 3; 143*d57664e9SAndroid Build Coastguard Worker int32 req_navigation = 4; 144*d57664e9SAndroid Build Coastguard Worker int32 req_five_way_nav = 5; 145*d57664e9SAndroid Build Coastguard Worker} 146*d57664e9SAndroid Build Coastguard Worker 147*d57664e9SAndroid Build Coastguard Worker// Screens supported by this application. 148*d57664e9SAndroid Build Coastguard Workermessage SupportsScreen { 149*d57664e9SAndroid Build Coastguard Worker enum ScreenType { 150*d57664e9SAndroid Build Coastguard Worker UNSPECIFIED_SCREEN_TYPE = 0; 151*d57664e9SAndroid Build Coastguard Worker SMALL = 1; 152*d57664e9SAndroid Build Coastguard Worker NORMAL = 2; 153*d57664e9SAndroid Build Coastguard Worker LARGE = 3; 154*d57664e9SAndroid Build Coastguard Worker XLARGE = 4; 155*d57664e9SAndroid Build Coastguard Worker } 156*d57664e9SAndroid Build Coastguard Worker repeated ScreenType screens = 1; 157*d57664e9SAndroid Build Coastguard Worker bool supports_any_densities = 2; 158*d57664e9SAndroid Build Coastguard Worker int32 requires_smallest_width_dp = 3; 159*d57664e9SAndroid Build Coastguard Worker int32 compatible_width_limit_dp = 4; 160*d57664e9SAndroid Build Coastguard Worker int32 largest_width_limit_dp = 5; 161*d57664e9SAndroid Build Coastguard Worker} 162*d57664e9SAndroid Build Coastguard Worker 163*d57664e9SAndroid Build Coastguard Worker// Inputs supported by this application. 164*d57664e9SAndroid Build Coastguard Workermessage SupportsInput { 165*d57664e9SAndroid Build Coastguard Worker repeated string inputs = 1; 166*d57664e9SAndroid Build Coastguard Worker} 167*d57664e9SAndroid Build Coastguard Worker 168*d57664e9SAndroid Build Coastguard Worker// Information about used features which is extracted from <uses-permission> 169*d57664e9SAndroid Build Coastguard Worker// elements or implied from permissions. 170*d57664e9SAndroid Build Coastguard Workermessage Feature { 171*d57664e9SAndroid Build Coastguard Worker message ImpliedData { 172*d57664e9SAndroid Build Coastguard Worker bool from_sdk_23_permission = 1; 173*d57664e9SAndroid Build Coastguard Worker repeated string reasons = 2; 174*d57664e9SAndroid Build Coastguard Worker } 175*d57664e9SAndroid Build Coastguard Worker 176*d57664e9SAndroid Build Coastguard Worker string name = 1; 177*d57664e9SAndroid Build Coastguard Worker bool required = 2; 178*d57664e9SAndroid Build Coastguard Worker int32 version = 3; 179*d57664e9SAndroid Build Coastguard Worker 180*d57664e9SAndroid Build Coastguard Worker ImpliedData implied_data = 4; 181*d57664e9SAndroid Build Coastguard Worker} 182*d57664e9SAndroid Build Coastguard Worker 183*d57664e9SAndroid Build Coastguard Workermessage FeatureGroup { 184*d57664e9SAndroid Build Coastguard Worker string label = 1; 185*d57664e9SAndroid Build Coastguard Worker int32 open_gles_version = 2; 186*d57664e9SAndroid Build Coastguard Worker repeated Feature features = 3; 187*d57664e9SAndroid Build Coastguard Worker} 188*d57664e9SAndroid Build Coastguard Worker 189*d57664e9SAndroid Build Coastguard Worker// Information about permission requested by the application. 190*d57664e9SAndroid Build Coastguard Workermessage UsesPermission { 191*d57664e9SAndroid Build Coastguard Worker message PermissionFlags { 192*d57664e9SAndroid Build Coastguard Worker bool never_for_location = 1; 193*d57664e9SAndroid Build Coastguard Worker } 194*d57664e9SAndroid Build Coastguard Worker 195*d57664e9SAndroid Build Coastguard Worker string name = 1; 196*d57664e9SAndroid Build Coastguard Worker int32 max_sdk_version = 2; 197*d57664e9SAndroid Build Coastguard Worker bool required = 3; 198*d57664e9SAndroid Build Coastguard Worker bool implied = 4; 199*d57664e9SAndroid Build Coastguard Worker bool sdk23_and_above = 5; 200*d57664e9SAndroid Build Coastguard Worker 201*d57664e9SAndroid Build Coastguard Worker repeated string required_features = 6; 202*d57664e9SAndroid Build Coastguard Worker repeated string required_not_features = 7; 203*d57664e9SAndroid Build Coastguard Worker 204*d57664e9SAndroid Build Coastguard Worker PermissionFlags permission_flags = 8; 205*d57664e9SAndroid Build Coastguard Worker} 206*d57664e9SAndroid Build Coastguard Worker 207*d57664e9SAndroid Build Coastguard Worker// Permission defined by the application. 208*d57664e9SAndroid Build Coastguard Workermessage Permission { 209*d57664e9SAndroid Build Coastguard Worker string name = 1; 210*d57664e9SAndroid Build Coastguard Worker} 211*d57664e9SAndroid Build Coastguard Worker 212*d57664e9SAndroid Build Coastguard Worker// Data extracted about launchable activity. Launchable activity is an entry 213*d57664e9SAndroid Build Coastguard Worker// point on phone and tablet devices. 214*d57664e9SAndroid Build Coastguard Workermessage LaunchableActivity { 215*d57664e9SAndroid Build Coastguard Worker string name = 1; 216*d57664e9SAndroid Build Coastguard Worker string icon = 2; 217*d57664e9SAndroid Build Coastguard Worker string label = 3; 218*d57664e9SAndroid Build Coastguard Worker} 219*d57664e9SAndroid Build Coastguard Worker 220*d57664e9SAndroid Build Coastguard Worker// Data extracted about leanback launchable activity. Leanback launchable 221*d57664e9SAndroid Build Coastguard Worker// activity is an entry point on TV devices. 222*d57664e9SAndroid Build Coastguard Workermessage LeanbackLaunchableActivity { 223*d57664e9SAndroid Build Coastguard Worker string name = 1; 224*d57664e9SAndroid Build Coastguard Worker string icon = 2; 225*d57664e9SAndroid Build Coastguard Worker string label = 3; 226*d57664e9SAndroid Build Coastguard Worker string banner = 4; 227*d57664e9SAndroid Build Coastguard Worker} 228*d57664e9SAndroid Build Coastguard Worker 229*d57664e9SAndroid Build Coastguard Worker// Library used by the application. 230*d57664e9SAndroid Build Coastguard Workermessage UsesLibrary { 231*d57664e9SAndroid Build Coastguard Worker string name = 1; 232*d57664e9SAndroid Build Coastguard Worker bool required = 2; 233*d57664e9SAndroid Build Coastguard Worker} 234*d57664e9SAndroid Build Coastguard Worker 235*d57664e9SAndroid Build Coastguard Worker// Static library this APK declares. 236*d57664e9SAndroid Build Coastguard Workermessage StaticLibrary { 237*d57664e9SAndroid Build Coastguard Worker string name = 1; 238*d57664e9SAndroid Build Coastguard Worker int32 version = 2; 239*d57664e9SAndroid Build Coastguard Worker int32 version_major = 3; 240*d57664e9SAndroid Build Coastguard Worker} 241*d57664e9SAndroid Build Coastguard Worker 242*d57664e9SAndroid Build Coastguard Worker// Static library used by the application. 243*d57664e9SAndroid Build Coastguard Workermessage UsesStaticLibrary { 244*d57664e9SAndroid Build Coastguard Worker string name = 1; 245*d57664e9SAndroid Build Coastguard Worker int32 version = 2; 246*d57664e9SAndroid Build Coastguard Worker int32 version_major = 3; 247*d57664e9SAndroid Build Coastguard Worker repeated string certificates = 4; 248*d57664e9SAndroid Build Coastguard Worker} 249*d57664e9SAndroid Build Coastguard Worker 250*d57664e9SAndroid Build Coastguard Worker// SDK library this APK declares. 251*d57664e9SAndroid Build Coastguard Workermessage SdkLibrary { 252*d57664e9SAndroid Build Coastguard Worker string name = 1; 253*d57664e9SAndroid Build Coastguard Worker int32 version_major = 2; 254*d57664e9SAndroid Build Coastguard Worker} 255*d57664e9SAndroid Build Coastguard Worker 256*d57664e9SAndroid Build Coastguard Worker// SDK library used by the application. 257*d57664e9SAndroid Build Coastguard Workermessage UsesSdkLibrary { 258*d57664e9SAndroid Build Coastguard Worker string name = 1; 259*d57664e9SAndroid Build Coastguard Worker int32 version_major = 2; 260*d57664e9SAndroid Build Coastguard Worker repeated string certificates = 3; 261*d57664e9SAndroid Build Coastguard Worker} 262*d57664e9SAndroid Build Coastguard Worker 263*d57664e9SAndroid Build Coastguard Worker// Native library used by the application. 264*d57664e9SAndroid Build Coastguard Workermessage UsesNativeLibrary { 265*d57664e9SAndroid Build Coastguard Worker string name = 1; 266*d57664e9SAndroid Build Coastguard Worker bool required = 2; 267*d57664e9SAndroid Build Coastguard Worker} 268*d57664e9SAndroid Build Coastguard Worker 269*d57664e9SAndroid Build Coastguard Worker// Information extracted from <meta-data> elements defined across 270*d57664e9SAndroid Build Coastguard Worker// AndroidManifest.xml. 271*d57664e9SAndroid Build Coastguard Workermessage Metadata { 272*d57664e9SAndroid Build Coastguard Worker string name = 1; 273*d57664e9SAndroid Build Coastguard Worker oneof value { 274*d57664e9SAndroid Build Coastguard Worker string value_string = 2; 275*d57664e9SAndroid Build Coastguard Worker int32 value_int = 3; 276*d57664e9SAndroid Build Coastguard Worker } 277*d57664e9SAndroid Build Coastguard Worker oneof resource { 278*d57664e9SAndroid Build Coastguard Worker string resource_string = 4; 279*d57664e9SAndroid Build Coastguard Worker int32 resource_int = 5; 280*d57664e9SAndroid Build Coastguard Worker } 281*d57664e9SAndroid Build Coastguard Worker} 282*d57664e9SAndroid Build Coastguard Worker 283*d57664e9SAndroid Build Coastguard Worker// Information about overlay that is declared in the APK. 284*d57664e9SAndroid Build Coastguard Workermessage Overlay { 285*d57664e9SAndroid Build Coastguard Worker string target_package = 1; 286*d57664e9SAndroid Build Coastguard Worker int32 priority = 2; 287*d57664e9SAndroid Build Coastguard Worker bool static = 3; 288*d57664e9SAndroid Build Coastguard Worker string required_property_name = 4; 289*d57664e9SAndroid Build Coastguard Worker string required_property_value = 5; 290*d57664e9SAndroid Build Coastguard Worker} 291*d57664e9SAndroid Build Coastguard Worker 292*d57664e9SAndroid Build Coastguard Worker// Data extracted from <package-verifier> element. 293*d57664e9SAndroid Build Coastguard Workermessage PackageVerifier { 294*d57664e9SAndroid Build Coastguard Worker string name = 1; 295*d57664e9SAndroid Build Coastguard Worker string public_key = 2; 296*d57664e9SAndroid Build Coastguard Worker} 297*d57664e9SAndroid Build Coastguard Worker 298*d57664e9SAndroid Build Coastguard Worker// External packages used by the application 299*d57664e9SAndroid Build Coastguard Workermessage UsesPackage { 300*d57664e9SAndroid Build Coastguard Worker string name = 1; 301*d57664e9SAndroid Build Coastguard Worker string package_type = 2; 302*d57664e9SAndroid Build Coastguard Worker int32 version = 3; 303*d57664e9SAndroid Build Coastguard Worker int32 version_major = 4; 304*d57664e9SAndroid Build Coastguard Worker repeated string certificates = 5; 305*d57664e9SAndroid Build Coastguard Worker} 306*d57664e9SAndroid Build Coastguard Worker 307*d57664e9SAndroid Build Coastguard Worker// Open GL textures format supported by the current application. 308*d57664e9SAndroid Build Coastguard Workermessage SupportsGlTexture { 309*d57664e9SAndroid Build Coastguard Worker repeated string name = 1; 310*d57664e9SAndroid Build Coastguard Worker} 311*d57664e9SAndroid Build Coastguard Worker 312*d57664e9SAndroid Build Coastguard Worker// Screens compatible with the application. 313*d57664e9SAndroid Build Coastguard Workermessage CompatibleScreens { 314*d57664e9SAndroid Build Coastguard Worker message Screen { 315*d57664e9SAndroid Build Coastguard Worker int32 size = 1; 316*d57664e9SAndroid Build Coastguard Worker int32 density = 2; 317*d57664e9SAndroid Build Coastguard Worker } 318*d57664e9SAndroid Build Coastguard Worker 319*d57664e9SAndroid Build Coastguard Worker repeated Screen screens = 1; 320*d57664e9SAndroid Build Coastguard Worker} 321*d57664e9SAndroid Build Coastguard Worker 322*d57664e9SAndroid Build Coastguard Worker// Architectures supported by the application. 323*d57664e9SAndroid Build Coastguard Workermessage Architectures { 324*d57664e9SAndroid Build Coastguard Worker repeated string architectures = 1; 325*d57664e9SAndroid Build Coastguard Worker repeated string alt_architectures = 2; 326*d57664e9SAndroid Build Coastguard Worker} 327*d57664e9SAndroid Build Coastguard Worker 328*d57664e9SAndroid Build Coastguard Worker// Information extracted from <property> elements defined across 329*d57664e9SAndroid Build Coastguard Worker// AndroidManifest.xml. 330*d57664e9SAndroid Build Coastguard Workermessage Property { 331*d57664e9SAndroid Build Coastguard Worker string name = 1; 332*d57664e9SAndroid Build Coastguard Worker oneof value { 333*d57664e9SAndroid Build Coastguard Worker string value_string = 2; 334*d57664e9SAndroid Build Coastguard Worker int32 value_int = 3; 335*d57664e9SAndroid Build Coastguard Worker } 336*d57664e9SAndroid Build Coastguard Worker oneof resource { 337*d57664e9SAndroid Build Coastguard Worker string resource_string = 4; 338*d57664e9SAndroid Build Coastguard Worker int32 resource_int = 5; 339*d57664e9SAndroid Build Coastguard Worker } 340*d57664e9SAndroid Build Coastguard Worker}