1/* 2 * Copyright (C) 2018 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17syntax = "proto3"; 18 19package apex.proto; 20 21option java_package = "com.android.apex"; 22option java_outer_classname = "Protos"; 23 24message ApexManifest { 25 26 // Package Name 27 string name = 1; 28 29 // Version Number 30 int64 version = 2; 31 32 // Pre Install Hook 33 string preInstallHook = 3; 34 35 // Post Install Hook 36 string postInstallHook = 4; 37 38 // Version Name 39 string versionName = 5; 40 41 // Signals whenever this APEX doesn't contain any executable code. 42 // If this field is set to true, then apexd will mount this apex 43 // with MS_NOEXEC flag. 44 bool noCode = 6; 45 46 // List of native libs which can be used by other apexes or system. 47 repeated string provideNativeLibs = 7; 48 49 // List of native libs which this apex uses from other apexes or system. 50 repeated string requireNativeLibs = 8; 51 52 // List of JNI libs. 53 // linkerconfig/libnativeloader use this field so that java libraries can 54 // load JNI libraries in the same apex. 55 // This is supposed to be filled by the build system with libraries which are 56 // marked as "is_jni: true" from the list of "native_shared_libs". 57 repeated string jniLibs = 9; 58} 59