1//
2// Copyright (C) 2015 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//
16package {
17    default_applicable_licenses: ["Android-Apache-2.0"],
18}
19
20common_libs = ["android.car-system-stubs"]
21
22common_static_libs = [
23    "car-apps-common",
24    "car-assist-lib",
25    "car-telephony-common",
26    "car-messenger-common",
27    "car-ui-lib",
28    "car-uxr-client-lib",
29    "guava",
30    "glide-prebuilt",
31    "hilt_android",
32    "libphonenumber",
33    "androidx-constraintlayout_constraintlayout",
34    "androidx-constraintlayout_constraintlayout-solver",
35    "androidx.cardview_cardview",
36    "androidx.legacy_legacy-support-v4",
37    "androidx.lifecycle_lifecycle-extensions",
38    "androidx.preference_preference",
39    "androidx.recyclerview_recyclerview",
40    "androidx.room_room-runtime",
41    "androidx.sqlite_sqlite",
42    "androidx.sqlite_sqlite-framework",
43]
44
45android_app {
46    name: "CarDialerApp",
47
48    srcs: ["src/**/*.java"],
49
50    resource_dirs: ["res"],
51
52    min_sdk_version: "29",
53
54    target_sdk_version: "31",
55
56    sdk_version: "system_current",
57
58    required: ["allowed_privapp_com.android.car.dialer"],
59
60    certificate: "platform",
61    // certificate: ":com-android-car-apps-test",
62
63    overrides: ["Dialer"],
64
65    libs: common_libs,
66
67    static_libs: common_static_libs + [
68        "car-dialer-framework-dep",
69    ],
70
71    plugins: [
72        "androidx.room_room-compiler-plugin",
73    ],
74
75    optimize: {
76        enabled: false,
77    },
78
79    privileged: true,
80
81    dex_preopt: {
82        enabled: false,
83    },
84
85    product_variables: {
86        pdk: {
87            enabled: false,
88        },
89    },
90}
91
92//##################################################################################
93// Duplicate of CarDialerApp using fake components used for debugging and testings #
94//##################################################################################
95
96android_test_helper_app {
97    name: "CarDialerAppForTesting",
98
99    srcs: ["src/**/*.java"],
100
101    exclude_srcs: ["src/com/android/car/dialer/inject/BluetoothSingleHfpModule.java"],
102
103    resource_dirs: ["res"],
104
105    sdk_version: "system_current",
106
107    min_sdk_version: "29",
108
109    target_sdk_version: "31",
110
111    required: ["allowed_privapp_com.android.car.dialer"],
112
113    certificate: "platform",
114    // certificate: ":com-android-car-apps-test",
115
116    overrides: ["Dialer"],
117
118    libs: common_libs,
119
120    static_libs: common_static_libs + [
121        "car-dialer-fake-framework-dep",
122        "car-dialer-testing",
123    ],
124
125    plugins: [
126        "androidx.room_room-compiler-plugin",
127    ],
128
129    optimize: {
130        enabled: false,
131    },
132
133    privileged: true,
134
135    dex_preopt: {
136        enabled: false,
137    },
138
139    product_variables: {
140        pdk: {
141            enabled: false,
142        },
143    },
144
145    // runtime cc library which is used by mockito-target-extended.
146    jni_libs: [
147        // For mockito extended
148        "libdexmakerjvmtiagent",
149        "libstaticjvmtiagent",
150    ],
151
152    // Enforce the jni libraries to be grouped into the APK file.
153    use_embedded_native_libs: true,
154}
155
156//##################################################################################
157
158android_app {
159    name: "CarDialerAppEmulatorBuild",
160
161    srcs: ["src/**/*.java", "framework/emulator/src/**/*.java"],
162
163    exclude_srcs: [
164        "src/com/android/car/dialer/inject/HfpDataModules.java",
165        "src/com/android/car/dialer/inject/BluetoothSingleHfpModule.java"
166    ],
167
168    resource_dirs: ["res"],
169
170    sdk_version: "system_current",
171
172    min_sdk_version: "29",
173
174    target_sdk_version: "31",
175
176    required: ["allowed_privapp_com.android.car.dialer"],
177
178    certificate: "platform",
179    // certificate: ":com-android-car-apps-test",
180
181    overrides: ["Dialer"],
182
183    libs: common_libs,
184
185    static_libs: common_static_libs + [
186        "car-dialer-framework-dep",
187    ],
188
189    plugins: [
190        "androidx.room_room-compiler-plugin",
191    ],
192
193    optimize: {
194        enabled: false,
195    },
196
197    privileged: true,
198
199    dex_preopt: {
200        enabled: false,
201    },
202
203    product_variables: {
204        pdk: {
205            enabled: false,
206        },
207    },
208}
209