Skip to content

Commit f2f7584

Browse files
committed
move common build.gradle code to common.build.gradle
1 parent ef7dc79 commit f2f7584

8 files changed

Lines changed: 97 additions & 212 deletions

File tree

Lines changed: 0 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
plugins {
22
id 'com.android.application'
3-
id 'kotlin-android'
43
id 'org.jetbrains.kotlin.android'
54
}
65

@@ -15,47 +14,9 @@ android {
1514
compileSdk 33
1615
versionCode 1
1716
versionName "1.0"
18-
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), '../proguard-rules.pro'
19-
}
20-
21-
buildTypes {
22-
release {
23-
minifyEnabled true
24-
shrinkResources true
25-
multiDexEnabled false
26-
}
27-
debug {
28-
minifyEnabled false
29-
shrinkResources false
30-
multiDexEnabled false
31-
versionNameSuffix = "-dev"
32-
}
33-
}
34-
35-
compileOptions {
36-
sourceCompatibility JavaVersion.VERSION_11
37-
targetCompatibility JavaVersion.VERSION_11
38-
}
39-
kotlinOptions {
40-
jvmTarget = '11'
41-
}
42-
dependenciesInfo {
43-
includeInApk false
44-
includeInBundle false
45-
}
46-
packagingOptions {
47-
jniLibs {
48-
excludes += ['**/kotlin/**']
49-
}
50-
resources {
51-
excludes += ['/META-INF/*.kotlin_module', 'kotlin-tooling-metadata.json', '**/kotlin/**', '**/*.txt', '**/*.xml', '**/*.properties']
52-
}
5317
}
5418
}
5519

5620
dependencies {
57-
implementation "org.jetbrains.kotlin:kotlin-stdlib"
5821
debugImplementation project(":logger")
59-
60-
compileOnly "de.robv.android.xposed:api:82"
6122
}
Lines changed: 1 addition & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
plugins {
22
id 'com.android.application'
3-
id 'kotlin-android'
43
id 'org.jetbrains.kotlin.android'
54
}
65

@@ -15,46 +14,9 @@ android {
1514
compileSdk 33
1615
versionCode 1
1716
versionName "1.0"
18-
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), '../proguard-rules.pro'
19-
}
20-
21-
buildTypes {
22-
release {
23-
minifyEnabled true
24-
shrinkResources true
25-
multiDexEnabled false
26-
}
27-
debug {
28-
minifyEnabled false
29-
shrinkResources false
30-
multiDexEnabled false
31-
versionNameSuffix = "-dev"
32-
}
33-
}
34-
35-
compileOptions {
36-
sourceCompatibility JavaVersion.VERSION_11
37-
targetCompatibility JavaVersion.VERSION_11
38-
}
39-
kotlinOptions {
40-
jvmTarget = '11'
41-
}
42-
dependenciesInfo {
43-
includeInApk false
44-
includeInBundle false
45-
}
46-
packagingOptions {
47-
jniLibs {
48-
excludes += ['**/kotlin/**']
49-
}
50-
resources {
51-
excludes += ['/META-INF/*.kotlin_module', 'kotlin-tooling-metadata.json', '**/kotlin/**', '**/*.txt', '**/*.xml', '**/*.properties']
52-
}
5317
}
5418
}
19+
5520
dependencies {
56-
implementation "org.jetbrains.kotlin:kotlin-stdlib"
5721
implementation project(":reflection")
58-
59-
compileOnly "de.robv.android.xposed:api:82"
6022
}
Lines changed: 1 addition & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
plugins {
22
id 'com.android.application'
3-
id 'kotlin-android'
43
id 'org.jetbrains.kotlin.android'
54
}
65

@@ -15,47 +14,9 @@ android {
1514
compileSdk 33
1615
versionCode 1
1716
versionName "1.0"
18-
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), '../proguard-rules.pro'
19-
}
20-
21-
buildTypes {
22-
release {
23-
minifyEnabled true
24-
shrinkResources true
25-
multiDexEnabled false
26-
}
27-
debug {
28-
minifyEnabled false
29-
shrinkResources false
30-
multiDexEnabled false
31-
versionNameSuffix = "-dev"
32-
}
33-
}
34-
35-
compileOptions {
36-
sourceCompatibility JavaVersion.VERSION_11
37-
targetCompatibility JavaVersion.VERSION_11
38-
}
39-
kotlinOptions {
40-
jvmTarget = '11'
41-
}
42-
dependenciesInfo {
43-
includeInApk false
44-
includeInBundle false
45-
}
46-
packagingOptions {
47-
jniLibs {
48-
excludes += ['**/kotlin/**']
49-
}
50-
resources {
51-
excludes += ['/META-INF/*.kotlin_module', 'kotlin-tooling-metadata.json', '**/kotlin/**', '**/*.txt', '**/*.xml', '**/*.properties']
52-
}
5317
}
5418
}
5519

5620
dependencies {
57-
implementation "org.jetbrains.kotlin:kotlin-stdlib"
58-
debugImplementation project(":logger")
59-
60-
compileOnly "de.robv.android.xposed:api:82"
21+
6122
}

‎build.gradle‎

Lines changed: 2 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -25,27 +25,7 @@ allprojects {
2525
}
2626

2727
afterEvaluate { project ->
28-
def propsFile = rootProject.file('keystore.properties')
29-
30-
if (propsFile.exists() && project.hasProperty("android")) {
31-
def props = new Properties()
32-
props.load(new FileInputStream(propsFile))
33-
34-
android {
35-
signingConfigs {
36-
release {
37-
storeFile = file(props['storeFile'])
38-
assert storeFile.exists()
39-
40-
storePassword = props['storePassword']
41-
keyAlias = props['keyAlias']
42-
keyPassword = props['keyPassword']
43-
}
44-
}
45-
46-
defaultConfig.signingConfig = signingConfigs.release
47-
buildTypes.debug.signingConfig = signingConfigs.release
48-
}
49-
}
28+
if (project != rootProject)
29+
project.apply from: "../common.build.gradle"
5030
}
5131
}

‎common.build.gradle‎

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
def isAndroid = plugins.hasPlugin("com.android.application")
2+
def isAndroidLib = plugins.hasPlugin("com.android.library")
3+
def isJavaLib = plugins.hasPlugin("java-library")
4+
def isKotlinLib = plugins.hasPlugin("org.jetbrains.kotlin.jvm")
5+
def isKotlinAndroid = plugins.hasPlugin("org.jetbrains.kotlin.android")
6+
7+
if (isAndroid || isAndroidLib) {
8+
android {
9+
defaultConfig {
10+
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), '../proguard-rules.pro'
11+
}
12+
13+
def propsFile = rootProject.file('keystore.properties')
14+
if (propsFile.exists()) {
15+
def props = new Properties()
16+
props.load(new FileInputStream(propsFile))
17+
18+
19+
signingConfigs {
20+
release {
21+
storeFile = new File(getRootProject().projectDir, props['storeFile']).absoluteFile
22+
assert storeFile.exists()
23+
24+
storePassword = props['storePassword']
25+
26+
if (keyAlias == null)
27+
keyAlias = props['keyAlias']
28+
keyPassword = props['keyPassword']
29+
}
30+
}
31+
32+
defaultConfig.signingConfig = signingConfigs.release
33+
buildTypes.debug.signingConfig = signingConfigs.release
34+
35+
}
36+
37+
buildTypes {
38+
release {
39+
minifyEnabled true
40+
41+
if (isAndroid) {
42+
shrinkResources true
43+
}
44+
multiDexEnabled false
45+
}
46+
debug {
47+
minifyEnabled false
48+
shrinkResources false
49+
multiDexEnabled false
50+
versionNameSuffix = "-dev"
51+
}
52+
}
53+
54+
compileOptions {
55+
sourceCompatibility JavaVersion.VERSION_11
56+
targetCompatibility JavaVersion.VERSION_11
57+
}
58+
if (isAndroid) {
59+
dependenciesInfo {
60+
includeInApk false
61+
includeInBundle false
62+
}
63+
}
64+
packagingOptions {
65+
jniLibs {
66+
excludes += ['**/kotlin/**']
67+
}
68+
resources {
69+
excludes += ['/META-INF/*.kotlin_module', 'kotlin-tooling-metadata.json', '**/kotlin/**', '**/*.txt', '**/*.xml', '**/*.properties']
70+
}
71+
}
72+
}
73+
}
74+
75+
if (isKotlinLib || isKotlinAndroid) {
76+
kotlin {
77+
jvmToolchain(11)
78+
}
79+
}
80+
81+
dependencies {
82+
if(isAndroid || isAndroidLib) {
83+
implementation 'androidx.annotation:annotation:1.6.0'
84+
compileOnly "de.robv.android.xposed:api:82"
85+
}
86+
87+
}
88+
89+
System.out.println("applied common on " + project)

‎logger/build.gradle‎

Lines changed: 2 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -11,28 +11,12 @@ android {
1111
targetSdk 33
1212
compileSdk 33
1313

14-
consumerProguardFiles "consumer-rules.pro"
15-
}
16-
17-
buildTypes {
18-
release {
19-
minifyEnabled true
20-
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro', '../proguard-rules.pro'
21-
}
22-
}
23-
compileOptions {
24-
sourceCompatibility JavaVersion.VERSION_11
25-
targetCompatibility JavaVersion.VERSION_11
26-
}
27-
kotlinOptions {
28-
jvmTarget = '11'
14+
consumerProguardFiles 'consumer-rules.pro'
15+
proguardFiles += 'proguard-rules.pro'
2916
}
3017
}
3118

3219
dependencies {
33-
implementation "org.jetbrains.kotlin:kotlin-stdlib"
3420
implementation "androidx.collection:collection-ktx:1.2.0"
35-
// compileOnly "androidx.appcompat:appcompat:1.6.1"
3621
implementation "androidx.core:core-ktx:1.10.1"
37-
3822
}

‎reflection/build.gradle‎

Lines changed: 1 addition & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,7 @@
11
plugins {
2-
id 'java-library'
32
id 'org.jetbrains.kotlin.jvm'
43
}
54

6-
java {
7-
sourceCompatibility = JavaVersion.VERSION_11
8-
targetCompatibility = JavaVersion.VERSION_11
9-
}
10-
compileKotlin {
11-
kotlinOptions {
12-
jvmTarget = "11"
13-
}
14-
}
15-
165
dependencies {
17-
implementation "org.jetbrains.kotlin:kotlin-stdlib"
18-
19-
compileOnly "de.robv.android.xposed:api:82"
6+
207
}

‎template/build.gradle‎

Lines changed: 1 addition & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
plugins {
22
id 'com.android.application'
3-
id 'kotlin-android'
43
id 'org.jetbrains.kotlin.android'
54
}
65

@@ -15,47 +14,9 @@ android {
1514
compileSdk 33
1615
versionCode 1
1716
versionName "1.0"
18-
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), '../proguard-rules.pro'
19-
}
20-
21-
buildTypes {
22-
release {
23-
minifyEnabled true
24-
shrinkResources true
25-
multiDexEnabled false
26-
}
27-
debug {
28-
minifyEnabled false
29-
shrinkResources false
30-
multiDexEnabled false
31-
versionNameSuffix = "-dev"
32-
}
33-
}
34-
35-
compileOptions {
36-
sourceCompatibility JavaVersion.VERSION_11
37-
targetCompatibility JavaVersion.VERSION_11
38-
}
39-
kotlinOptions {
40-
jvmTarget = '11'
41-
}
42-
dependenciesInfo {
43-
includeInApk false
44-
includeInBundle false
45-
}
46-
packagingOptions {
47-
jniLibs {
48-
excludes += ['**/kotlin/**']
49-
}
50-
resources {
51-
excludes += ['/META-INF/*.kotlin_module', 'kotlin-tooling-metadata.json', '**/kotlin/**', '**/*.txt', '**/*.xml', '**/*.properties']
52-
}
5317
}
5418
}
5519

5620
dependencies {
57-
implementation "org.jetbrains.kotlin:kotlin-stdlib"
58-
debugImplementation project(":logger")
59-
60-
compileOnly "de.robv.android.xposed:api:82"
21+
6122
}

0 commit comments

Comments
 (0)