Skip to content

Commit f883215

Browse files
authored
build: upgrade AGP to 8.1.4 (#544)
- **AGP Upgrade (7.0.4 -> 8.1.4):** Fixes an R8 bug in the older AGP that caused build failures with recent `gomobile` binaries. Version 8.1.4 includes the fix and supports target SDK 33. - **Dependency Updates:** Updated `google-services` and Firebase dependencies to be compatible with AGP 8.1.4. - **Plugin Fix:** Fixed the `google-services` plugin in `build.gradle` (moved to end, removed duplicate).
1 parent 5a48272 commit f883215

7 files changed

Lines changed: 717 additions & 1065 deletions

File tree

Android/app/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
apply plugin: 'com.android.application'
2-
apply plugin: 'com.google.gms.google-services'
32
apply plugin: 'com.google.firebase.crashlytics'
43

54
// See https://developer.android.com/studio/publish/app-signing#secure-shared-keystore
@@ -94,6 +93,7 @@ android {
9493
sourceCompatibility JavaVersion.VERSION_1_8
9594
targetCompatibility JavaVersion.VERSION_1_8
9695
}
96+
namespace 'app.intra'
9797
}
9898

9999
repositories {
@@ -139,8 +139,8 @@ dependencies {
139139
}
140140

141141
// For Firebase Analytics
142-
apply plugin: 'com.google.gms.google-services'
143142
apply plugin: 'com.google.firebase.firebase-perf'
143+
apply plugin: 'com.google.gms.google-services'
144144

145145
// Go backend build tasks
146146
tasks.register('compileGoBackend', Exec) {

Android/app/src/main/AndroidManifest.xml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
<?xml version="1.0" encoding="utf-8"?>
2-
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
3-
package="app.intra">
2+
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
43

54
<uses-permission android:name="android.permission.INTERNET" />
65
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

Android/build.gradle

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,11 @@ buildscript {
1616
mavenCentral()
1717
}
1818
dependencies {
19-
classpath 'com.android.tools.build:gradle:7.0.4'
19+
classpath 'com.android.tools.build:gradle:8.1.4'
2020

2121
// For Firebase Analytics
22-
classpath 'com.google.gms:google-services:4.3.10'
23-
classpath 'com.google.firebase:perf-plugin:1.4.0'
22+
classpath 'com.google.gms:google-services:4.4.1'
23+
classpath 'com.google.firebase:perf-plugin:1.4.1'
2424
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.8.1'
2525
}
2626
dependencyLocking {

Android/buildscript-gradle.lockfile

Lines changed: 94 additions & 87 deletions
Original file line numberDiff line numberDiff line change
@@ -1,126 +1,133 @@
11
# This is a Gradle generated file for dependency locking.
22
# Manual edits can break the build and are not advised.
33
# This file is expected to be part of source control.
4-
androidx.databinding:databinding-common:7.0.4=classpath
5-
androidx.databinding:databinding-compiler-common:7.0.4=classpath
6-
com.android.databinding:baseLibrary:7.0.4=classpath
7-
com.android.tools.analytics-library:crash:30.0.4=classpath
8-
com.android.tools.analytics-library:protos:30.0.4=classpath
9-
com.android.tools.analytics-library:shared:30.0.4=classpath
10-
com.android.tools.analytics-library:tracker:30.0.4=classpath
11-
com.android.tools.build.jetifier:jetifier-core:1.0.0-beta09=classpath
12-
com.android.tools.build.jetifier:jetifier-processor:1.0.0-beta09=classpath
13-
com.android.tools.build:aapt2-proto:7.0.4-7396180=classpath
14-
com.android.tools.build:aaptcompiler:7.0.4=classpath
15-
com.android.tools.build:apksig:7.0.4=classpath
16-
com.android.tools.build:apkzlib:7.0.4=classpath
17-
com.android.tools.build:builder-model:7.0.4=classpath
18-
com.android.tools.build:builder-test-api:7.0.4=classpath
19-
com.android.tools.build:builder:7.0.4=classpath
20-
com.android.tools.build:bundletool:1.6.0=classpath
21-
com.android.tools.build:gradle-api:7.0.4=classpath
22-
com.android.tools.build:gradle:7.0.4=classpath
23-
com.android.tools.build:manifest-merger:30.0.4=classpath
4+
androidx.databinding:databinding-common:8.1.4=classpath
5+
androidx.databinding:databinding-compiler-common:8.1.4=classpath
6+
com.android.databinding:baseLibrary:8.1.4=classpath
7+
com.android.tools.analytics-library:crash:31.1.4=classpath
8+
com.android.tools.analytics-library:protos:31.1.4=classpath
9+
com.android.tools.analytics-library:shared:31.1.4=classpath
10+
com.android.tools.analytics-library:tracker:31.1.4=classpath
11+
com.android.tools.build.jetifier:jetifier-core:1.0.0-beta10=classpath
12+
com.android.tools.build.jetifier:jetifier-processor:1.0.0-beta10=classpath
13+
com.android.tools.build:aapt2-proto:8.1.4-10154469=classpath
14+
com.android.tools.build:aaptcompiler:8.1.4=classpath
15+
com.android.tools.build:apksig:8.1.4=classpath
16+
com.android.tools.build:apkzlib:8.1.4=classpath
17+
com.android.tools.build:builder-model:8.1.4=classpath
18+
com.android.tools.build:builder-test-api:8.1.4=classpath
19+
com.android.tools.build:builder:8.1.4=classpath
20+
com.android.tools.build:bundletool:1.14.0=classpath
21+
com.android.tools.build:gradle-api:8.1.4=classpath
22+
com.android.tools.build:gradle-settings-api:8.1.4=classpath
23+
com.android.tools.build:gradle:8.1.4=classpath
24+
com.android.tools.build:manifest-merger:31.1.4=classpath
2425
com.android.tools.build:transform-api:2.0.0-deprecated-use-gradle-api=classpath
25-
com.android.tools.ddms:ddmlib:30.0.4=classpath
26-
com.android.tools.layoutlib:layoutlib-api:30.0.4=classpath
27-
com.android.tools.lint:lint-model:30.0.4=classpath
28-
com.android.tools.utp:android-device-provider-gradle-proto:30.0.4=classpath
29-
com.android.tools.utp:android-test-plugin-host-retention-proto:30.0.4=classpath
30-
com.android.tools.utp:android-test-plugin-result-listener-gradle-proto:30.0.4=classpath
31-
com.android.tools:annotations:30.0.4=classpath
32-
com.android.tools:common:30.0.4=classpath
33-
com.android.tools:dvlib:30.0.4=classpath
34-
com.android.tools:repository:30.0.4=classpath
35-
com.android.tools:sdk-common:30.0.4=classpath
36-
com.android.tools:sdklib:30.0.4=classpath
37-
com.android:signflinger:7.0.4=classpath
38-
com.android:zipflinger:7.0.4=classpath
39-
com.google.android.gms:strict-version-matcher-plugin:1.2.2=classpath
26+
com.android.tools.ddms:ddmlib:31.1.4=classpath
27+
com.android.tools.layoutlib:layoutlib-api:31.1.4=classpath
28+
com.android.tools.lint:lint-model:31.1.4=classpath
29+
com.android.tools.lint:lint-typedef-remover:31.1.4=classpath
30+
com.android.tools.utp:android-device-provider-ddmlib-proto:31.1.4=classpath
31+
com.android.tools.utp:android-device-provider-gradle-proto:31.1.4=classpath
32+
com.android.tools.utp:android-test-plugin-host-additional-test-output-proto:31.1.4=classpath
33+
com.android.tools.utp:android-test-plugin-host-apk-installer-proto:31.1.4=classpath
34+
com.android.tools.utp:android-test-plugin-host-coverage-proto:31.1.4=classpath
35+
com.android.tools.utp:android-test-plugin-host-emulator-control-proto:31.1.4=classpath
36+
com.android.tools.utp:android-test-plugin-host-logcat-proto:31.1.4=classpath
37+
com.android.tools.utp:android-test-plugin-host-retention-proto:31.1.4=classpath
38+
com.android.tools.utp:android-test-plugin-result-listener-gradle-proto:31.1.4=classpath
39+
com.android.tools:annotations:31.1.4=classpath
40+
com.android.tools:common:31.1.4=classpath
41+
com.android.tools:dvlib:31.1.4=classpath
42+
com.android.tools:repository:31.1.4=classpath
43+
com.android.tools:sdk-common:31.1.4=classpath
44+
com.android.tools:sdklib:31.1.4=classpath
45+
com.android:signflinger:8.1.4=classpath
46+
com.android:zipflinger:8.1.4=classpath
47+
com.google.android.gms:strict-version-matcher-plugin:1.2.4=classpath
4048
com.google.android:annotations:4.1.1.4=classpath
41-
com.google.api.grpc:proto-google-common-protos:1.12.0=classpath
49+
com.google.api.grpc:proto-google-common-protos:2.0.1=classpath
4250
com.google.auto.value:auto-value-annotations:1.6.2=classpath
4351
com.google.code.findbugs:jsr305:3.0.2=classpath
44-
com.google.code.gson:gson:2.8.6=classpath
45-
com.google.crypto.tink:tink:1.3.0-rc2=classpath
52+
com.google.code.gson:gson:2.8.9=classpath
53+
com.google.crypto.tink:tink:1.7.0=classpath
4654
com.google.dagger:dagger:2.28.3=classpath
47-
com.google.errorprone:error_prone_annotations:2.3.4=classpath
55+
com.google.errorprone:error_prone_annotations:2.11.0=classpath
4856
com.google.firebase:firebase-crashlytics-buildtools:2.8.1=classpath
4957
com.google.firebase:firebase-crashlytics-gradle:2.8.1=classpath
50-
com.google.firebase:perf-plugin:1.4.0=classpath
58+
com.google.firebase:perf-plugin:1.4.1=classpath
5159
com.google.flatbuffers:flatbuffers-java:1.12.0=classpath
52-
com.google.gms:google-services:4.3.10=classpath
60+
com.google.gms:google-services:4.4.1=classpath
5361
com.google.guava:failureaccess:1.0.1=classpath
54-
com.google.guava:guava:30.1-jre=classpath
62+
com.google.guava:guava:31.1-jre=classpath
5563
com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava=classpath
5664
com.google.j2objc:j2objc-annotations:1.3=classpath
5765
com.google.jimfs:jimfs:1.1=classpath
58-
com.google.protobuf:protobuf-java-util:3.10.0=classpath
59-
com.google.protobuf:protobuf-java:3.10.0=classpath
60-
com.google.testing.platform:core-proto:0.0.8-alpha04=classpath
61-
com.googlecode.json-simple:json-simple:1.1=classpath
66+
com.google.protobuf:protobuf-java-util:3.19.3=classpath
67+
com.google.protobuf:protobuf-java:3.19.3=classpath
68+
com.google.testing.platform:core-proto:0.0.8-alpha08=classpath
6269
com.googlecode.juniversalchardet:juniversalchardet:1.0.3=classpath
6370
com.squareup:javapoet:1.10.0=classpath
6471
com.squareup:javawriter:2.5.0=classpath
6572
com.sun.activation:javax.activation:1.2.0=classpath
6673
com.sun.istack:istack-commons-runtime:3.0.8=classpath
6774
com.sun.xml.fastinfoset:FastInfoset:1.2.16=classpath
68-
commons-codec:commons-codec:1.10=classpath
75+
commons-codec:commons-codec:1.11=classpath
6976
commons-io:commons-io:2.4=classpath
7077
commons-logging:commons-logging:1.2=classpath
71-
io.grpc:grpc-api:1.21.1=classpath
72-
io.grpc:grpc-context:1.21.1=classpath
73-
io.grpc:grpc-core:1.21.1=classpath
74-
io.grpc:grpc-netty:1.21.1=classpath
75-
io.grpc:grpc-protobuf-lite:1.21.1=classpath
76-
io.grpc:grpc-protobuf:1.21.1=classpath
77-
io.grpc:grpc-stub:1.21.1=classpath
78-
io.netty:netty-buffer:4.1.34.Final=classpath
79-
io.netty:netty-codec-http2:4.1.34.Final=classpath
80-
io.netty:netty-codec-http:4.1.34.Final=classpath
81-
io.netty:netty-codec-socks:4.1.34.Final=classpath
82-
io.netty:netty-codec:4.1.34.Final=classpath
83-
io.netty:netty-common:4.1.34.Final=classpath
84-
io.netty:netty-handler-proxy:4.1.34.Final=classpath
85-
io.netty:netty-handler:4.1.34.Final=classpath
86-
io.netty:netty-resolver:4.1.34.Final=classpath
87-
io.netty:netty-transport:4.1.34.Final=classpath
88-
io.opencensus:opencensus-api:0.21.0=classpath
89-
io.opencensus:opencensus-contrib-grpc-metrics:0.21.0=classpath
90-
it.unimi.dsi:fastutil:8.4.0=classpath
78+
io.grpc:grpc-api:1.45.1=classpath
79+
io.grpc:grpc-context:1.45.1=classpath
80+
io.grpc:grpc-core:1.45.1=classpath
81+
io.grpc:grpc-netty:1.45.1=classpath
82+
io.grpc:grpc-protobuf-lite:1.45.1=classpath
83+
io.grpc:grpc-protobuf:1.45.1=classpath
84+
io.grpc:grpc-stub:1.45.1=classpath
85+
io.netty:netty-buffer:4.1.72.Final=classpath
86+
io.netty:netty-codec-http2:4.1.72.Final=classpath
87+
io.netty:netty-codec-http:4.1.72.Final=classpath
88+
io.netty:netty-codec-socks:4.1.72.Final=classpath
89+
io.netty:netty-codec:4.1.72.Final=classpath
90+
io.netty:netty-common:4.1.72.Final=classpath
91+
io.netty:netty-handler-proxy:4.1.72.Final=classpath
92+
io.netty:netty-handler:4.1.72.Final=classpath
93+
io.netty:netty-resolver:4.1.72.Final=classpath
94+
io.netty:netty-tcnative-classes:2.0.46.Final=classpath
95+
io.netty:netty-transport:4.1.72.Final=classpath
96+
io.perfmark:perfmark-api:0.23.0=classpath
9197
jakarta.activation:jakarta.activation-api:1.2.1=classpath
9298
jakarta.xml.bind:jakarta.xml.bind-api:2.3.2=classpath
99+
javax.annotation:javax.annotation-api:1.3.2=classpath
93100
javax.inject:javax.inject:1=classpath
94101
net.java.dev.jna:jna-platform:5.6.0=classpath
95102
net.java.dev.jna:jna:5.6.0=classpath
96103
net.sf.jopt-simple:jopt-simple:4.9=classpath
97104
net.sf.kxml:kxml2:2.3.0=classpath
98-
org.antlr:antlr4:4.5.3=classpath
99-
org.apache.commons:commons-compress:1.20=classpath
100-
org.apache.httpcomponents:httpclient:4.5.6=classpath
101-
org.apache.httpcomponents:httpcore:4.4.10=classpath
105+
org.apache.commons:commons-compress:1.21=classpath
106+
org.apache.httpcomponents:httpclient:4.5.13=classpath
107+
org.apache.httpcomponents:httpcore:4.4.15=classpath
102108
org.apache.httpcomponents:httpmime:4.5.6=classpath
103-
org.bouncycastle:bcpkix-jdk15on:1.56=classpath
104-
org.bouncycastle:bcprov-jdk15on:1.56=classpath
105-
org.checkerframework:checker-qual:3.5.0=classpath
106-
org.codehaus.mojo:animal-sniffer-annotations:1.17=classpath
109+
org.bitbucket.b_c:jose4j:0.7.0=classpath
110+
org.bouncycastle:bcpkix-jdk15on:1.67=classpath
111+
org.bouncycastle:bcprov-jdk15on:1.67=classpath
112+
org.checkerframework:checker-qual:3.12.0=classpath
113+
org.codehaus.mojo:animal-sniffer-annotations:1.19=classpath
107114
org.glassfish.jaxb:jaxb-runtime:2.3.2=classpath
108115
org.glassfish.jaxb:txw2:2.3.2=classpath
109116
org.jdom:jdom2:2.0.6=classpath
110-
org.jetbrains.intellij.deps:trove4j:1.0.20181211=classpath
111-
org.jetbrains.kotlin:kotlin-reflect:1.4.32=classpath
112-
org.jetbrains.kotlin:kotlin-stdlib-common:1.4.32=classpath
113-
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.4.32=classpath
114-
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.4.32=classpath
115-
org.jetbrains.kotlin:kotlin-stdlib:1.4.32=classpath
117+
org.jetbrains.intellij.deps:trove4j:1.0.20200330=classpath
118+
org.jetbrains.kotlin:kotlin-reflect:1.8.20-RC2=classpath
119+
org.jetbrains.kotlin:kotlin-stdlib-common:1.8.20-RC2=classpath
120+
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.20-RC2=classpath
121+
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.20-RC2=classpath
122+
org.jetbrains.kotlin:kotlin-stdlib:1.8.20-RC2=classpath
116123
org.jetbrains:annotations:13.0=classpath
117-
org.json:json:20180813=classpath
118124
org.jvnet.staxex:stax-ex:1.8.1=classpath
119-
org.ow2.asm:asm-analysis:9.0=classpath
120-
org.ow2.asm:asm-commons:9.0=classpath
121-
org.ow2.asm:asm-tree:9.0=classpath
122-
org.ow2.asm:asm-util:7.0=classpath
123-
org.ow2.asm:asm:9.0=classpath
125+
org.ow2.asm:asm-analysis:9.2=classpath
126+
org.ow2.asm:asm-commons:9.2=classpath
127+
org.ow2.asm:asm-tree:9.2=classpath
128+
org.ow2.asm:asm-util:9.2=classpath
129+
org.ow2.asm:asm:9.2=classpath
130+
org.slf4j:slf4j-api:1.7.30=classpath
124131
org.tensorflow:tensorflow-lite-metadata:0.1.0-rc2=classpath
125132
xerces:xercesImpl:2.12.0=classpath
126133
xml-apis:xml-apis:1.4.01=classpath

Android/gradle.properties

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,11 @@ org.gradle.jvmargs=-Xmx2048m
2222
android.enableJetifier=true
2323
android.useAndroidX=true
2424

25+
# Keep legacy AGP behavior after upgrading to AGP 8
26+
android.defaults.buildfeatures.buildconfig=true
27+
android.nonTransitiveRClass=false
28+
android.nonFinalResIds=false
29+
2530
ANDROID_COMPILE_SDK_VERSION=33
2631
ANDROID_BUILD_TOOLS_VERSION=33.0.0
2732

0 commit comments

Comments
 (0)