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"