diff --git a/application/app/build.gradle b/application/app/build.gradle index aa163d71d..00d622caa 100644 --- a/application/app/build.gradle +++ b/application/app/build.gradle @@ -62,12 +62,18 @@ android { } } } + androidComponents { + beforeVariants(selector().withBuildType("vlcBundle")) { variantBuilder -> + variantBuilder.minSdk = 30 + } + } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' kotlinOptions.freeCompilerArgs = ['-Xno-param-assertions'] + defaultConfig.minSdkVersion rootProject.ext.minSdkVersion } signedRelease { initWith release @@ -78,6 +84,10 @@ android { initWith release matchingFallbacks = ['release'] } + vlcBundle { + initWith release + matchingFallbacks = ['release'] + } debug { applicationIdSuffix ".debug" jniDebuggable true @@ -132,6 +142,10 @@ android { if (variant.buildType.name == "noTv") { versionCode = abiCodesNoTv.get(abiName, 0) } + if (variant.buildType.name == "vlcBundle") { + versionCode = 9 + } + output.versionCodeOverride = 10000000 + defaultConfig.versionCode + versionCode def outputName = "VLC-Android-" outputName += variant.versionName.replace(" ", "-") diff --git a/application/donations/build.gradle b/application/donations/build.gradle index 4125898bc..c7da3c495 100644 --- a/application/donations/build.gradle +++ b/application/donations/build.gradle @@ -64,6 +64,10 @@ android { initWith release matchingFallbacks = ['release'] } + vlcBundle { + initWith release + matchingFallbacks = ['release'] + } } namespace 'org.videolan.vlc.donations' buildFeatures { diff --git a/application/live-plot-graph/build.gradle b/application/live-plot-graph/build.gradle index c0a2cbdfe..9e38f7534 100644 --- a/application/live-plot-graph/build.gradle +++ b/application/live-plot-graph/build.gradle @@ -45,6 +45,10 @@ android { initWith release matchingFallbacks = ['release'] } + vlcBundle { + initWith release + matchingFallbacks = ['release'] + } } namespace 'org.videolan.liveplotgraph' buildFeatures { diff --git a/application/mediadb/build.gradle b/application/mediadb/build.gradle index c3f4ae5d1..14bcb38df 100644 --- a/application/mediadb/build.gradle +++ b/application/mediadb/build.gradle @@ -57,6 +57,10 @@ android { initWith release matchingFallbacks = ['release'] } + vlcBundle { + initWith release + matchingFallbacks = ['release'] + } } namespace 'org.videolan.vlc.mediadb' diff --git a/application/moviepedia/build.gradle b/application/moviepedia/build.gradle index a364b7a19..b8ad6b324 100644 --- a/application/moviepedia/build.gradle +++ b/application/moviepedia/build.gradle @@ -43,6 +43,10 @@ android { initWith release matchingFallbacks = ['release'] } + vlcBundle { + initWith release + matchingFallbacks = ['release'] + } } namespace 'org.videolan.moviepedia' buildFeatures { diff --git a/application/resources/build.gradle b/application/resources/build.gradle index a3d7e2d74..fe26b34c4 100644 --- a/application/resources/build.gradle +++ b/application/resources/build.gradle @@ -34,6 +34,10 @@ android { initWith release matchingFallbacks = ['release'] } + vlcBundle { + initWith release + matchingFallbacks = ['release'] + } } @@ -70,6 +74,8 @@ dependencies { releaseApi "org.videolan.android:medialibrary-all:$rootProject.ext.medialibraryVersion" noTvApi "org.videolan.android:libvlc-all:$rootProject.ext.libvlcVersion" noTvApi "org.videolan.android:medialibrary-all:$rootProject.ext.medialibraryVersion" + vlcBundleApi "org.videolan.android:libvlc-all:$rootProject.ext.libvlcVersion" + vlcBundleApi "org.videolan.android:medialibrary-all:$rootProject.ext.medialibraryVersion" api "com.google.android.material:material:$rootProject.ext.androidxMaterialVersion" diff --git a/application/television/build.gradle b/application/television/build.gradle index dea419c6e..6c6bc307d 100644 --- a/application/television/build.gradle +++ b/application/television/build.gradle @@ -37,6 +37,10 @@ android { initWith release matchingFallbacks = ['release'] } + vlcBundle { + initWith release + matchingFallbacks = ['release'] + } } namespace 'org.videolan.television' diff --git a/application/tools/build.gradle b/application/tools/build.gradle index 296468357..aabe6328f 100644 --- a/application/tools/build.gradle +++ b/application/tools/build.gradle @@ -17,7 +17,11 @@ android { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } - nov { + noTv { + initWith release + matchingFallbacks = ['release'] + } + vlcBundle { initWith release matchingFallbacks = ['release'] } diff --git a/application/vlc-android/build.gradle b/application/vlc-android/build.gradle index da245e7da..e12a5b83b 100644 --- a/application/vlc-android/build.gradle +++ b/application/vlc-android/build.gradle @@ -81,6 +81,10 @@ android { matchingFallbacks = ['release'] buildConfigField "boolean", "NO_TV", "true" } + vlcBundle { + initWith release + matchingFallbacks = ['release'] + } signedRelease { initWith release matchingFallbacks = ['release'] diff --git a/application/webserver/build.gradle b/application/webserver/build.gradle index 09dbaccdd..41b13c4e0 100644 --- a/application/webserver/build.gradle +++ b/application/webserver/build.gradle @@ -35,6 +35,10 @@ android { initWith release matchingFallbacks = ['release'] } + vlcBundle { + initWith release + matchingFallbacks = ['release'] + } } task webCopy(type: Copy) { diff --git a/buildsystem/gitlab/.gitlab-ci.yml b/buildsystem/gitlab/.gitlab-ci.yml index c701111ae..912924b4c 100644 --- a/buildsystem/gitlab/.gitlab-ci.yml +++ b/buildsystem/gitlab/.gitlab-ci.yml @@ -486,14 +486,14 @@ release: script: - ./buildsystem/compile.sh --init - ./gradlew assembleRelease - - ./gradlew bundleRelease + - ./gradlew bundleVlcBundle - ./gradlew assembleNoTv artifacts: name: "${CI_COMMIT_TAG}" paths: - application/app/build/outputs/apk/release/VLC-Android-*.apk - application/app/build/outputs/apk/noTv/VLC-Android-*.apk - - application/app/build/outputs/bundle/release/*.aab + - application/app/build/outputs/bundle/vlcBundle/*.aab # - application/app/build/outputs/mapping/release/mapping.txt expire_in: 2 weeks