1*e07d83d3SAndroid Build Coastguard Workerplugins { 2*e07d83d3SAndroid Build Coastguard Worker id "maven-publish" 3*e07d83d3SAndroid Build Coastguard Worker 4*e07d83d3SAndroid Build Coastguard Worker id "com.android.library" 5*e07d83d3SAndroid Build Coastguard Worker} 6*e07d83d3SAndroid Build Coastguard Worker 7*e07d83d3SAndroid Build Coastguard Workerdescription = "gRPC: Cronet Android" 8*e07d83d3SAndroid Build Coastguard Worker 9*e07d83d3SAndroid Build Coastguard Workerrepositories { 10*e07d83d3SAndroid Build Coastguard Worker google() 11*e07d83d3SAndroid Build Coastguard Worker mavenCentral() 12*e07d83d3SAndroid Build Coastguard Worker} 13*e07d83d3SAndroid Build Coastguard Worker 14*e07d83d3SAndroid Build Coastguard Workerandroid { 15*e07d83d3SAndroid Build Coastguard Worker namespace 'io.grpc.cronet' 16*e07d83d3SAndroid Build Coastguard Worker compileSdkVersion 33 17*e07d83d3SAndroid Build Coastguard Worker defaultConfig { 18*e07d83d3SAndroid Build Coastguard Worker minSdkVersion 19 19*e07d83d3SAndroid Build Coastguard Worker targetSdkVersion 33 20*e07d83d3SAndroid Build Coastguard Worker versionCode 1 21*e07d83d3SAndroid Build Coastguard Worker versionName "1.0" 22*e07d83d3SAndroid Build Coastguard Worker testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" 23*e07d83d3SAndroid Build Coastguard Worker } 24*e07d83d3SAndroid Build Coastguard Worker buildTypes { 25*e07d83d3SAndroid Build Coastguard Worker debug { minifyEnabled false } 26*e07d83d3SAndroid Build Coastguard Worker release { 27*e07d83d3SAndroid Build Coastguard Worker minifyEnabled false 28*e07d83d3SAndroid Build Coastguard Worker consumerProguardFiles 'proguard-rules.pro' 29*e07d83d3SAndroid Build Coastguard Worker } 30*e07d83d3SAndroid Build Coastguard Worker } 31*e07d83d3SAndroid Build Coastguard Worker compileOptions { 32*e07d83d3SAndroid Build Coastguard Worker sourceCompatibility JavaVersion.VERSION_1_8 33*e07d83d3SAndroid Build Coastguard Worker targetCompatibility JavaVersion.VERSION_1_8 34*e07d83d3SAndroid Build Coastguard Worker } 35*e07d83d3SAndroid Build Coastguard Worker testOptions { unitTests { includeAndroidResources = true } } 36*e07d83d3SAndroid Build Coastguard Worker lintOptions { disable 'InvalidPackage' } 37*e07d83d3SAndroid Build Coastguard Worker publishing { 38*e07d83d3SAndroid Build Coastguard Worker singleVariant('release') { 39*e07d83d3SAndroid Build Coastguard Worker withSourcesJar() 40*e07d83d3SAndroid Build Coastguard Worker withJavadocJar() 41*e07d83d3SAndroid Build Coastguard Worker } 42*e07d83d3SAndroid Build Coastguard Worker } 43*e07d83d3SAndroid Build Coastguard Worker} 44*e07d83d3SAndroid Build Coastguard Worker 45*e07d83d3SAndroid Build Coastguard Workerdependencies { 46*e07d83d3SAndroid Build Coastguard Worker api project(':grpc-core'), 47*e07d83d3SAndroid Build Coastguard Worker libraries.cronet.api 48*e07d83d3SAndroid Build Coastguard Worker implementation libraries.guava 49*e07d83d3SAndroid Build Coastguard Worker testImplementation project(':grpc-testing') 50*e07d83d3SAndroid Build Coastguard Worker 51*e07d83d3SAndroid Build Coastguard Worker testImplementation libraries.cronet.embedded 52*e07d83d3SAndroid Build Coastguard Worker 53*e07d83d3SAndroid Build Coastguard Worker testImplementation libraries.junit 54*e07d83d3SAndroid Build Coastguard Worker testImplementation libraries.mockito.core 55*e07d83d3SAndroid Build Coastguard Worker testImplementation (libraries.robolectric) { 56*e07d83d3SAndroid Build Coastguard Worker // Unreleased change: https://github.com/robolectric/robolectric/pull/5432 57*e07d83d3SAndroid Build Coastguard Worker exclude group: 'com.google.auto.service', module: 'auto-service' 58*e07d83d3SAndroid Build Coastguard Worker } 59*e07d83d3SAndroid Build Coastguard Worker} 60*e07d83d3SAndroid Build Coastguard Worker 61*e07d83d3SAndroid Build Coastguard Workertask javadocs(type: Javadoc) { 62*e07d83d3SAndroid Build Coastguard Worker source = android.sourceSets.main.java.srcDirs 63*e07d83d3SAndroid Build Coastguard Worker classpath += files(android.getBootClasspath()) 64*e07d83d3SAndroid Build Coastguard Worker classpath += files({ 65*e07d83d3SAndroid Build Coastguard Worker android.libraryVariants.collect { variant -> 66*e07d83d3SAndroid Build Coastguard Worker variant.javaCompileProvider.get().classpath 67*e07d83d3SAndroid Build Coastguard Worker } 68*e07d83d3SAndroid Build Coastguard Worker }) 69*e07d83d3SAndroid Build Coastguard Worker options { 70*e07d83d3SAndroid Build Coastguard Worker // Disable JavaDoc doclint on Java 8. 71*e07d83d3SAndroid Build Coastguard Worker if (JavaVersion.current().isJava8Compatible()) { 72*e07d83d3SAndroid Build Coastguard Worker addStringOption('Xdoclint:none', '-quiet') 73*e07d83d3SAndroid Build Coastguard Worker } 74*e07d83d3SAndroid Build Coastguard Worker } 75*e07d83d3SAndroid Build Coastguard Worker exclude 'io/grpc/cronet/Internal*' 76*e07d83d3SAndroid Build Coastguard Worker} 77*e07d83d3SAndroid Build Coastguard Worker 78*e07d83d3SAndroid Build Coastguard Workertask javadocJar(type: Jar, dependsOn: javadocs) { 79*e07d83d3SAndroid Build Coastguard Worker archiveClassifier = 'javadoc' 80*e07d83d3SAndroid Build Coastguard Worker from javadocs.destinationDir 81*e07d83d3SAndroid Build Coastguard Worker} 82*e07d83d3SAndroid Build Coastguard Worker 83*e07d83d3SAndroid Build Coastguard Workertask sourcesJar(type: Jar) { 84*e07d83d3SAndroid Build Coastguard Worker archiveClassifier = 'sources' 85*e07d83d3SAndroid Build Coastguard Worker from android.sourceSets.main.java.srcDirs 86*e07d83d3SAndroid Build Coastguard Worker} 87*e07d83d3SAndroid Build Coastguard Worker 88*e07d83d3SAndroid Build Coastguard Workerpublishing { 89*e07d83d3SAndroid Build Coastguard Worker publications { 90*e07d83d3SAndroid Build Coastguard Worker maven { 91*e07d83d3SAndroid Build Coastguard Worker afterEvaluate { 92*e07d83d3SAndroid Build Coastguard Worker from components.release 93*e07d83d3SAndroid Build Coastguard Worker } 94*e07d83d3SAndroid Build Coastguard Worker } 95*e07d83d3SAndroid Build Coastguard Worker } 96*e07d83d3SAndroid Build Coastguard Worker} 97