/*
* Copyright (C) 2018 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/*
* Experimental gradle configuration. This file may not be up to date.
*/
apply plugin: 'com.android.library'
apply plugin: 'com.google.protobuf'
buildscript {
repositories {
mavenCentral()
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.1.4'
classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.6'
}
}
android {
compileSdkVersion 28
buildToolsVersion '28.0.3'
dexOptions {
preDexLibraries = false
additionalParameters = ['--core-library']
javaMaxHeapSize "6g"
}
android {
defaultConfig {
resConfigs "en"
}
}
defaultConfig {
minSdkVersion 23
targetSdkVersion 28
versionCode 1
versionName "1.0"
}
buildTypes {
debug {
minifyEnabled false
buildConfigField "boolean", "AOSP", "true"
buildConfigField "boolean", "ENG", "true"
buildConfigField "boolean", "NO_JNI_TEST", "false"
}
release {
minifyEnabled true
buildConfigField "boolean", "AOSP", "true"
buildConfigField "boolean", "ENG", "false"
buildConfigField "boolean", "NO_JNI_TEST", "false"
}
}
compileOptions() {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
sourceSets {
main {
res.srcDirs = ['res']
java.srcDirs = ['src']
manifest.srcFile 'AndroidManifest.xml'
proto {
srcDir 'src/com/android/tv/common/compat/internal'
}
}
}
}
repositories {
mavenCentral()
google()
}
dependencies {
implementation 'androidx.appcompat:appcompat:1.0.2'
implementation 'androidx.palette:palette:1.0.0'
implementation 'androidx.leanback:leanback:1.0.0'
implementation "androidx.tvprovider:tvprovider:1.0.0"
implementation "androidx.recyclerview:recyclerview:1.0.0"
implementation "androidx.recyclerview:recyclerview-selection:1.0.0"
implementation "androidx.palette:palette:1.0.0"
implementation 'com.google.guava:guava:26.0-android'
implementation 'com.google.protobuf:protobuf-java:3.0.0'
implementation 'com.google.dagger:dagger:2.18'
implementation 'com.google.dagger:dagger-android:2.18'
annotationProcessor 'com.google.dagger:dagger-compiler:2.18'
annotationProcessor 'com.google.dagger:dagger-android-processor:2.18'
}
protobuf {
// Configure the protoc executable
protoc {
artifact = 'com.google.protobuf:protoc:3.0.0'
plugins {
javalite {
// The codegen for lite comes as a separate artifact
artifact = 'com.google.protobuf:protoc-gen-javalite:3.0.0'
}
}
generateProtoTasks {
all().each {
task -> task.builtins {
remove java
}
task.plugins {
javalite {}
}
}
}
}
}