diff --git a/.gitlab-ci-files/job-android.yml b/.gitlab-ci-files/job-android.yml
index 946909ca4..66cffa96c 100644
--- a/.gitlab-ci-files/job-android.yml
+++ b/.gitlab-ci-files/job-android.yml
@@ -2,7 +2,7 @@ job-android:
stage: build
tags: [ "docker-android" ]
- image: gitlab.linphone.org:4567/bc/public/linphone-android/bc-dev-android:20230414_bullseye_jdk_17_cleaned
+ image: gitlab.linphone.org:4567/bc/public/linphone-android/bc-dev-android-36:20260120_trixie_java21_android36_gradle9
before_script:
- if ! [ -z ${SCP_PRIVATE_KEY+x} ]; then eval $(ssh-agent -s); fi
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
index b589d56e9..b86273d94 100644
--- a/.idea/compiler.xml
+++ b/.idea/compiler.xml
@@ -1,6 +1,6 @@
-
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index a8a2b162e..74dd639e4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -1,6 +1,7 @@
+
-
+
diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 63f56395d..0ab3b4428 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -150,7 +150,7 @@ android {
val appVersion = gitVersion
val appBranch = gitBranch
- println("Setting app version [$appVersion] app branch [$appBranch]")
+ println("Debug flavor app version is [$appVersion], app branch is [$appBranch]")
resValue("string", "linphone_app_version", appVersion)
resValue("string", "linphone_app_branch", appBranch)
if (useDifferentPackageNameForDebugBuild) {
@@ -181,7 +181,7 @@ android {
val appVersion = gitVersion
val appBranch = gitBranch
- println("Setting app version [$appVersion] app branch [$appBranch]")
+ println("Release flavor app version is [$appVersion], app branch is [$appBranch]")
resValue("string", "linphone_app_version", appVersion)
resValue("string", "linphone_app_branch", appBranch)
resValue("string", "file_provider", "$packageName.fileprovider")
@@ -199,13 +199,14 @@ android {
}
compileOptions {
- sourceCompatibility = JavaVersion.VERSION_17
- targetCompatibility = JavaVersion.VERSION_17
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
}
buildFeatures {
dataBinding = true
buildConfig = true
+ resValues = true
}
lint {
diff --git a/app/src/main/java/org/linphone/ui/assistant/fragment/AccountRecoverFragment.kt b/app/src/main/java/org/linphone/ui/assistant/fragment/RecoverAccountFragment.kt
similarity index 100%
rename from app/src/main/java/org/linphone/ui/assistant/fragment/AccountRecoverFragment.kt
rename to app/src/main/java/org/linphone/ui/assistant/fragment/RecoverAccountFragment.kt
diff --git a/docker-files/bc-dev-android-36 b/docker-files/bc-dev-android-36
new file mode 100644
index 000000000..2a55c4ce8
--- /dev/null
+++ b/docker-files/bc-dev-android-36
@@ -0,0 +1,55 @@
+FROM debian:trixie
+
+MAINTAINER Sylvain BERFINI
+
+# Configure locale
+RUN apt-get update && \
+ apt-get install -y locales && \
+ apt-get clean && \
+ echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && \
+ locale-gen
+ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
+
+ENV SHELL=/bin/bash
+
+# Define environment
+ENV ANDROID_HOME /opt/android-sdk-linux
+
+# Install common general tools
+RUN apt-get update && \
+ apt-get install -y curl nano sudo unzip vim wget rsync ssh git openjdk-21-jdk-headless && \
+ apt-get clean
+
+# Get latest Android command line tools, otherwise won't work with JDK 21
+RUN mkdir -p $ANDROID_HOME/cmdline-tools/latest
+RUN wget https://dl.google.com/android/repository/commandlinetools-linux-9477386_latest.zip && \
+ unzip commandlinetools-linux-9477386_latest.zip && \
+ cp -R ./cmdline-tools/* $ANDROID_HOME/cmdline-tools/latest/ && \
+ rm -rf ./cmdline-tools && \
+ rm -rf commandlinetools-linux-9477386_latest.zip
+
+# Update path to include all Android SDK tools
+ENV PATH $ANDROID_HOME/cmdline-tools/latest/bin:$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/platform-tools:$PATH
+
+# Get the Android SDK
+RUN echo "y" | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager "platform-tools" "tools" "platforms;android-36"
+
+# Accept Android SDK licenses
+RUN yes | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --licenses
+
+# Give write rights
+RUN chmod -R ugo+rwx $ANDROID_HOME
+
+# Consider all git repositories as safe
+RUN git --version
+RUN git config --global --add safe.directory '*'
+
+# Configure user bc
+RUN useradd -ms /bin/bash bc && \
+ echo 'bc:cotcot' | chpasswd && \
+ echo 'bc ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
+
+USER bc
+WORKDIR /home/bc
+ENV PS1='\[\e[34m\]\u@bc-dev-android>\[\e[0m\] '
+CMD bash
diff --git a/gradle.properties b/gradle.properties
index 306eac9f5..faaba61bb 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -23,4 +23,8 @@ kotlin.code.style=official
android.nonTransitiveRClass=true
android.nonFinalResIds=true
kapt.use.k2=true
+
+android.builtInKotlin=false
+android.newDsl=false
+
LinphoneSdkBuildDir=
\ No newline at end of file
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index 47d9d1ca0..7f911837a 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -1,9 +1,9 @@
[versions]
-agp = "8.13.2"
+agp = "9.0.0"
kotlin = "2.3.0"
gmsGoogleServices = "4.4.4"
firebaseCrashlytics = "3.0.6"
-firebaseBomVersion = "34.7.0"
+firebaseBomVersion = "34.8.0"
#noinspection NewerVersionAvailable
ktlint = "12.3.0"