Update Android dependencies and AGP (#165)

This updates kotlin, gson, AGP, and WorkManager to the latest versions.

It also updates the README to include the correct ndk version for our AGP, as specified here: developer.android.com/build/releases/gradle-plugin#compatibility
This commit is contained in:
Ian VanSchooten 2024-09-26 16:27:10 -04:00 committed by GitHub
parent a6398d6813
commit 2b900fe982
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 18 additions and 8 deletions

View File

@ -22,7 +22,7 @@ Run `flutter doctor` and fix everything it complains before proceeding
- Copy `env.sh.example` and set it up for your machine
- Ensure you have run `gomobile init`
- In Android Studio, make sure you have the current ndk installed by going to Tools -> SDK Manager, go to the SDK Tools tab, check the `Show package details` box, expand the NDK section and select `21.1.6352462` version.
- In Android Studio, make sure you have the current ndk installed by going to Tools -> SDK Manager, go to the SDK Tools tab, check the `Show package details` box, expand the NDK section and select `26.1.10909125` version.
- Ensure you have downloaded an ndk via android studio, this is likely not the default one and you need to check the
`Show package details` box to select the correct version. The correct version comes from the error when you try and compile
- Make sure you have `gem` installed with `sudo gem install`

View File

@ -77,10 +77,10 @@ flutter {
}
dependencies {
def workVersion = "2.7.1"
def workVersion = "2.9.1"
implementation "androidx.security:security-crypto:1.0.0"
implementation "androidx.work:work-runtime-ktx:$workVersion"
implementation 'com.google.code.gson:gson:2.8.9'
implementation 'com.google.code.gson:gson:2.11.0'
implementation "com.google.guava:guava:31.0.1-android"
implementation project(':mobileNebula')

View File

@ -98,7 +98,12 @@ class MainActivity: FlutterActivity() {
apiClient = APIClient(context)
registerReceiver(refreshReceiver, IntentFilter(ACTION_REFRESH_SITES), RECEIVER_NOT_EXPORTED)
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
registerReceiver(refreshReceiver, IntentFilter(ACTION_REFRESH_SITES), RECEIVER_NOT_EXPORTED)
} else {
@Suppress("UnspecifiedRegisterReceiverFlag")
registerReceiver(refreshReceiver, IntentFilter(ACTION_REFRESH_SITES))
}
enqueueDNUpdater()
}

View File

@ -213,7 +213,12 @@ class NebulaVpnService : VpnService() {
}
private fun registerReloadReceiver() {
registerReceiver(reloadReceiver, IntentFilter(ACTION_RELOAD), RECEIVER_NOT_EXPORTED)
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
registerReceiver(reloadReceiver, IntentFilter(ACTION_RELOAD), RECEIVER_NOT_EXPORTED)
} else {
@Suppress("UnspecifiedRegisterReceiverFlag")
registerReceiver(reloadReceiver, IntentFilter(ACTION_RELOAD))
}
}
private fun unregisterReloadReceiver() {

View File

@ -18,8 +18,8 @@ pluginManagement {
plugins {
id "dev.flutter.flutter-plugin-loader" version "1.0.0"
id "com.android.application" version '8.5.2' apply false
id "org.jetbrains.kotlin.android" version "1.7.20" apply false
id "com.android.application" version '8.6.1' apply false
id "org.jetbrains.kotlin.android" version "2.0.20" apply false
}
include ':app', ':mobileNebula'

View File

@ -73,7 +73,7 @@ class _AboutScreenState extends State<AboutScreen> {
Padding(
padding: EdgeInsets.only(top: 20),
child: Text(
'Copyright © 2022 Defined Networking, Inc',
'Copyright © 2024 Defined Networking, Inc',
textAlign: TextAlign.center,
)),
]),