1// Copyright (C) 2021 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_team: "trendy_team_rubidium_sdk_runtime",
17    default_applicable_licenses: ["Android-Apache-2.0"],
18}
19
20filegroup {
21    name: "sdksandbox_aidl",
22    srcs: [
23        "aidl/**/*.aidl",
24        "aidl/**/*.java",
25    ],
26    path: "aidl",
27}
28
29filegroup {
30    name: "sdksandbox-sources",
31    srcs: [
32        "src/**/*.java",
33    ],
34}
35
36java_library {
37    name: "SdkSandbox-java-lib",
38    srcs: [
39        ":sdksandbox-sources",
40        ":sdksandbox_aidl",
41        ":framework-sdksandbox-aidl-sources",
42    ],
43    libs: [
44        "framework-annotations-lib",
45        "framework-sdksandbox.impl",
46        "androidx.annotation_annotation",
47    ],
48    sdk_version: "module_current",
49    apex_available: ["com.android.adservices"],
50    defaults: [
51        "sdksandbox-java-defaults",
52    ],
53    static_libs: [
54        "modules-utils-backgroundthread",
55        "modules-utils-build",
56    ], //do not add any other static libs to SdkSandbox, else proguard will shrink it.
57}
58
59prebuilt_etc {
60    name: "com.android.adservices.sdksandbox.xml",
61    sub_dir: "permissions",
62    src: "com.android.adservices.sdksandbox.xml",
63}
64
65android_app {
66    name: "SdkSandbox",
67    libs: [
68        "framework-annotations-lib",
69        "framework-sdksandbox.impl",
70        "androidx.annotation_annotation",
71    ],
72    static_libs: [
73        "SdkSandbox-java-lib",
74    ], //do not add any other static libs to SdkSandbox, else proguard will shrink it.
75    visibility: [
76        "//packages/modules/AdServices:__subpackages__",
77        "//packages/modules/AdServices/sdksandbox/SdkSandbox",
78    ],
79    sdk_version: "module_current",
80    updatable: true,
81    certificate: "sdk_sandbox",
82    apex_available: ["com.android.adservices"],
83    optimize: {
84        // TODO(b/293177283): Remove after eliminating use of reflection
85        // for SandboxedSdkHolder instantiation.
86        proguard_compatibility: true,
87    },
88    defaults: [
89        "sdksandbox-java-defaults",
90    ],
91    jarjar_rules: "sdksandbox_app_jarjar_rules.txt",
92    jacoco: {
93        exclude_filter: [
94            "android.app.sdksandbox.**",
95            "com.android.server.sdksandbox.**",
96        ],
97    },
98    required: ["com.android.adservices.sdksandbox.xml"],
99}
100