1// Copyright (C) 2022 The Android Open Source Project 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15package { 16 default_applicable_licenses: ["Android-Apache-2.0"], 17} 18 19apex_key { 20 name: "com.android.devicelock.key", 21 public_key: "com.android.devicelock.avbpubkey", 22 private_key: "com.android.devicelock.pem", 23} 24 25android_app_certificate { 26 name: "com.android.devicelock.certificate", 27 certificate: "com.android.devicelock", 28} 29 30// Encapsulate the contributions made by the com.android.devicelock to the bootclasspath. 31bootclasspath_fragment { 32 name: "com.android.devicelock-bootclasspath-fragment", 33 contents: ["framework-devicelock"], 34 apex_available: ["com.android.devicelock"], 35 36 // The bootclasspath_fragments that provide APIs on which this depends. 37 fragments: [ 38 { 39 apex: "com.android.art", 40 module: "art-bootclasspath-fragment", 41 }, 42 ], 43 44 // Additional stubs libraries that this fragment's contents use which are 45 // not provided by another bootclasspath_fragment. 46 additional_stubs: [ 47 "android-non-updatable", 48 ], 49 hidden_api: { 50 51 // This module does not contain any split packages. 52 split_packages: [], 53 54 // The following packages and all their subpackages currently only 55 // contain classes from this bootclasspath_fragment. Listing a package 56 // here won't prevent other bootclasspath modules from adding classes in 57 // any of those packages but it will prevent them from adding those 58 // classes into an API surface, e.g. public, system, etc.. Doing so will 59 // result in a build failure due to inconsistent flags. 60 package_prefixes: [ 61 "android.devicelock", 62 ], 63 }, 64} 65 66systemserverclasspath_fragment { 67 name: "com.android.devicelock-systemserverclasspath-fragment", 68 standalone_contents: ["service-devicelock"], 69 apex_available: ["com.android.devicelock"], 70} 71 72override_apex { 73 name: "com.android.devicelock-debug", 74 base: "com.android.devicelock", 75 apps: [ 76 "DeviceLockControllerDebug", 77 ], 78} 79 80apex { 81 name: "com.android.devicelock", 82 min_sdk_version: "UpsideDownCake", 83 bootclasspath_fragments: ["com.android.devicelock-bootclasspath-fragment"], 84 systemserverclasspath_fragments: ["com.android.devicelock-systemserverclasspath-fragment"], 85 prebuilts: ["current_sdkinfo"], 86 manifest: "manifest.json", 87 androidManifest: "AndroidManifest.xml", 88 file_contexts: ":com.android.devicelock-file_contexts", 89 key: "com.android.devicelock.key", 90 certificate: ":com.android.devicelock.certificate", 91 apps: [ 92 "DeviceLockController", 93 ], 94 updatable: false, 95 future_updatable: true, 96} 97 98sdk { 99 name: "devicelock-module-sdk", 100 apexes: [ 101 // Adds exportable dependencies of the APEX to the sdk, 102 // e.g. *classpath_fragments. 103 "com.android.devicelock", 104 ], 105} 106