[go: nahoru, domu]

blob: 2c76e8d24938875add29983c78fb9d79b24937f5 [file] [log] [blame]
Trevor McGuirec63cd732019-02-06 13:12:50 -08001/*
2 * Copyright (C) 2019 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
13 * implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
Franklin Wu87eadea2019-02-15 14:01:24 -080017plugins {
18 id("AndroidXPlugin")
19 id("com.android.application")
fungja5e3d86b2019-09-13 11:31:54 -070020 id("kotlin-android")
Franklin Wu87eadea2019-02-15 14:01:24 -080021}
Trevor McGuirec63cd732019-02-06 13:12:50 -080022
23android {
Trevor McGuirec63cd732019-02-06 13:12:50 -080024 defaultConfig {
Franklin Wu393daa92019-02-20 11:05:19 -080025 applicationId "androidx.camera.integration.core"
Trevor McGuireaa64b9c2020-05-27 00:43:02 +000026
27 externalNativeBuild {
28 cmake {
29 cppFlags "-std=c++17"
30 arguments "-DCMAKE_VERBOSE_MAKEFILE=ON"
31 }
32 }
Trevor McGuirec63cd732019-02-06 13:12:50 -080033 }
34
Trevor McGuirec63cd732019-02-06 13:12:50 -080035 buildTypes {
36 debug {
Trevor McGuired369d392020-04-22 17:25:30 -070037 pseudoLocalesEnabled true
Trevor McGuirec63cd732019-02-06 13:12:50 -080038 }
39
40 release {
Trevor McGuiref2cec9e2020-02-18 21:56:00 -080041 minifyEnabled true
42 shrinkResources true
43 proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"))
Trevor McGuirec63cd732019-02-06 13:12:50 -080044 }
45 }
Trevor McGuireaa64b9c2020-05-27 00:43:02 +000046
47 externalNativeBuild {
48 cmake {
Trevor McGuireaa64b9c2020-05-27 00:43:02 +000049 path "src/main/cpp/CMakeLists.txt"
Fred Sladkey7c32b452022-01-20 17:02:09 -050050 version libs.versions.cmake.get()
Trevor McGuireaa64b9c2020-05-27 00:43:02 +000051 }
52 }
Aurimas Liutikasdcfa0352022-03-14 16:05:33 -070053 namespace "androidx.camera.integration.core"
Trevor McGuirec63cd732019-02-06 13:12:50 -080054}
55
56dependencies {
57 // Internal library
Franklin Wu87eadea2019-02-15 14:01:24 -080058 implementation(project(":camera:camera-camera2"))
Paul Rohdea1e169d2020-10-28 19:51:19 -070059 implementation(project(":camera:camera-camera2-pipe-integration"))
fungja5e3d86b2019-09-13 11:31:54 -070060 implementation(project(":camera:camera-core"))
Franklin Wu4d89be12019-10-23 15:38:43 -070061 implementation(project(":camera:camera-lifecycle"))
Xi Zhang3487fb82022-07-28 16:07:24 -070062 implementation(project(":camera:camera-mlkit-vision"))
Tahsin Masrur0ca1bb042023-09-29 09:56:30 +080063 implementation(project(":camera:camera-view"))
leo huang625e16a2021-06-04 01:00:37 +080064 implementation(project(":camera:camera-video"))
Aurimas Liutikas190091b2021-03-08 09:20:45 -080065 // Needed because AGP enforces same version between main and androidTest classpaths
66 implementation(project(":concurrent:concurrent-futures"))
Trevor McGuirec63cd732019-02-06 13:12:50 -080067
68 // Android Support Library
Aurimas Liutikasb3483fd2021-06-04 16:56:37 -070069 api(libs.constraintLayout)
Aurimas Liutikase26aaba2021-05-24 16:38:00 -070070 implementation(libs.guavaAndroid)
71 implementation(libs.espressoIdlingResource)
WenHung_Teng0bd3c1e2021-07-06 09:04:29 +080072 implementation("androidx.appcompat:appcompat:1.3.0")
leo huange6b504c2023-08-30 14:26:43 +080073 implementation("androidx.lifecycle:lifecycle-service:2.2.0")
weginlee7fee91dc2021-04-19 17:34:53 +080074 // MLKit library: Barcode scanner
Aurimas Liutikas2b445ff2022-10-11 12:32:16 -070075 implementation(libs.mlkitBarcode) {
76 exclude group: "androidx.fragment"
77 exclude group: "androidx.core"
78 exclude group: "androidx.exifinterface"
79 }
TY Chang617b54e2023-08-11 14:18:21 +080080 // camera-testing added as 'implementation' dependency to include camera-testing activity in APK
81 implementation(project(":camera:camera-testing")) {
82 // Ensure camera-testing does not pull in androidx.test dependencies
83 exclude(group:"androidx.test")
84 }
fungja5e3d86b2019-09-13 11:31:54 -070085
Xi Zhang8bf9aa72020-03-25 13:34:08 -070086 // 3P library
Aurimas Liutikase26aaba2021-05-24 16:38:00 -070087 debugImplementation(libs.leakcanary)
WenHung_Tengeb6b3502020-09-25 12:48:35 +080088 // Testing resource dependency for manifest
Tahsin Masrur068199ff2023-06-01 12:20:32 +080089 debugImplementation(project(":camera:camera-testing")) {
90 // Ensure camera-testing does not pull in androidx.test dependencies
91 exclude(group:"androidx.test")
92 }
Aurimas Liutikasfba96cb2022-08-23 08:48:34 -070093 debugImplementation(libs.testCore)
Brett Chabot61386902022-11-09 17:12:57 -080094 // explicitly add runner here to force consistency with androidTestImplementation
95 debugImplementation(libs.testRunner)
Xi Zhang8bf9aa72020-03-25 13:34:08 -070096
Alan Viverette08421e12024-01-03 09:58:57 -050097 // Align dependencies in debugRuntimeClasspath and debugAndroidTestRuntimeClasspath.
natnaelbelaya817dd92024-01-17 10:30:59 -050098 androidTestImplementation("androidx.annotation:annotation-experimental:1.4.0")
Alan Viverette08421e12024-01-03 09:58:57 -050099
fungja5e3d86b2019-09-13 11:31:54 -0700100 // Testing framework
Aurimas Liutikase26aaba2021-05-24 16:38:00 -0700101 androidTestImplementation(libs.testCore)
102 androidTestImplementation(libs.testExtJunit)
103 androidTestImplementation(libs.testRules)
104 androidTestImplementation(libs.testRunner)
105 androidTestImplementation(libs.testUiautomator)
Aurimas Liutikase26aaba2021-05-24 16:38:00 -0700106 androidTestImplementation(libs.espressoIdlingResource)
107 androidTestImplementation(libs.kotlinStdlib)
108 androidTestImplementation(libs.kotlinCoroutinesAndroid)
109 androidTestImplementation(libs.leakcanary)
110 androidTestImplementation(libs.leakcanaryInstrumentation)
111 androidTestImplementation(libs.truth)
Tahsin Masrure586b0e2022-12-12 21:23:59 +0800112 androidTestImplementation(project(":camera:camera-camera2"))
Tahsin Masrur068199ff2023-06-01 12:20:32 +0800113 androidTestImplementation(project(":camera:camera-testing")) {
114 // Ensure camera-testing does not pull in androidx.test dependencies
115 exclude(group:"androidx.test")
116 }
Trevor McGuired369d392020-04-22 17:25:30 -0700117 androidTestImplementation(project(":concurrent:concurrent-futures"))
118 androidTestImplementation(project(":concurrent:concurrent-futures-ktx"))
Jim Sproch9e38b4f2021-01-06 14:21:06 -0800119 androidTestImplementation(project(":internal-testutils-runtime"))
Marcello Galhardo32de0cc2024-05-14 15:18:55 +0100120 androidTestImplementation(project(":internal-testutils-lifecycle"))
Trevor McGuire2bdd7342023-11-16 00:49:51 +0000121 androidTestImplementation(project(":internal-testutils-truth"))
Trevor McGuire89454ee2024-06-04 17:27:36 -0700122 androidTestImplementation("androidx.core:core:1.1.0")
Ian Lake6b6bf162021-08-25 22:23:04 -0700123 androidTestImplementation("androidx.lifecycle:lifecycle-runtime-testing:2.3.1")
Trevor McGuire89454ee2024-06-04 17:27:36 -0700124 androidTestImplementation("androidx.palette:palette:1.0.0")
WenHung_Tengb72a4e02022-08-10 16:48:06 +0800125 androidTestImplementation("androidx.test.espresso:espresso-core:3.3.0")
Tahsin Masrur2dbe75f2023-01-12 02:31:00 +0800126 androidTestImplementation("org.jetbrains.kotlinx:atomicfu:0.13.1")
Trevor McGuired369d392020-04-22 17:25:30 -0700127
Tahsin Masrured67d002024-01-03 13:01:06 +0800128 testImplementation(libs.kotlinStdlib)
129 testImplementation(libs.kotlinCoroutinesAndroid)
130 testImplementation(libs.kotlinCoroutinesTest)
Aurimas Liutikase26aaba2021-05-24 16:38:00 -0700131 testImplementation(libs.junit)
Tahsin Masrured67d002024-01-03 13:01:06 +0800132 testImplementation(libs.robolectric)
Aurimas Liutikase26aaba2021-05-24 16:38:00 -0700133 testImplementation(libs.truth)
Tahsin Masrured67d002024-01-03 13:01:06 +0800134 testImplementation(project(":internal-testutils-ktx"))
Trevor McGuirec63cd732019-02-06 13:12:50 -0800135}