diff --git a/.drone.yml b/.drone.yml index 4f33e4cd6..45b6b5ae6 100644 --- a/.drone.yml +++ b/.drone.yml @@ -4,7 +4,7 @@ name: generic steps: - name: generic - image: nextcloudci/android:android-44 + image: ghcr.io/nextcloud/continuous-integration-android8:2 commands: - ./gradlew --console=plain assembleGeneric @@ -22,7 +22,7 @@ name: gplay steps: - name: gplay - image: nextcloudci/android:android-44 + image: ghcr.io/nextcloud/continuous-integration-android8:2 commands: - ./gradlew --console=plain assembleGplay @@ -40,7 +40,7 @@ name: tests steps: - name: all - image: nextcloudci/android:android-49 + image: ghcr.io/nextcloud/continuous-integration-android8:2 privileged: true commands: - emulator-headless -avd android-27 -no-snapshot -gpu swiftshader_indirect -no-window -no-audio -skin 500x833 & @@ -80,7 +80,7 @@ name: analysis steps: - name: analysis - image: nextcloudci/android:android-44 + image: ghcr.io/nextcloud/continuous-integration-android8:2 environment: GIT_USERNAME: from_secret: GIT_USERNAME diff --git a/.github/workflows/assembleFlavors.yml b/.github/workflows/assembleFlavors.yml index 4c5fd592f..cb975d7ac 100644 --- a/.github/workflows/assembleFlavors.yml +++ b/.github/workflows/assembleFlavors.yml @@ -13,11 +13,11 @@ jobs: flavor: [ Generic, Gplay ] steps: - uses: actions/checkout@v3 - - name: set up JDK 8 + - name: set up JDK 11 uses: actions/setup-java@v3 with: distribution: "temurin" - java-version: 8.0 + java-version: 11 - name: Build ${{ matrix.flavor }} run: | echo "org.gradle.jvmargs=-Xmx2g -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError" >> gradle.properties diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index c724b0cfd..0f1e10a78 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -13,10 +13,10 @@ jobs: task: [ detekt, ktlintCheck ] steps: - uses: actions/checkout@v3 - - name: Set up JDK 8 + - name: Set up JDK 11 uses: actions/setup-java@v3 with: distribution: "temurin" - java-version: 8.0 + java-version: 11 - name: Check ${{ matrix.task }} run: ./gradlew ${{ matrix.task }} diff --git a/.github/workflows/qa.yml b/.github/workflows/qa.yml index 4acfd94e9..b8c028da5 100644 --- a/.github/workflows/qa.yml +++ b/.github/workflows/qa.yml @@ -13,12 +13,12 @@ jobs: id: check-secrets - uses: actions/checkout@v3 if: ${{ steps.check-secrets.outputs.ok == 'true' }} - - name: set up JDK 8 + - name: set up JDK 11 if: ${{ steps.check-secrets.outputs.ok == 'true' }} uses: actions/setup-java@v3 with: distribution: "temurin" - java-version: 8.0 + java-version: 11 - name: Build QA if: ${{ steps.check-secrets.outputs.ok == 'true' }} env: diff --git a/app/build.gradle b/app/build.gradle index 86d64a56d..1af0b66d4 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -36,7 +36,7 @@ apply plugin: "org.jlleitschuh.gradle.ktlint" android { compileSdkVersion 30 - buildToolsVersion '30.0.3' + buildToolsVersion '32.0.0' defaultConfig { minSdkVersion 21 targetSdkVersion 30 @@ -85,26 +85,26 @@ android { testInstrumentationRunnerArgument "TEST_SERVER_PASSWORD", "${NC_TEST_SERVER_PASSWORD}" } - dexOptions { - javaMaxHeapSize "4g" - } - buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } - packagingOptions { - exclude 'META-INF/LICENSE.txt' - exclude 'META-INF/LICENSE' - exclude 'META-INF/NOTICE.txt' - exclude 'META-INF/NOTICE' - exclude 'META-INF/DEPENDENCIES' - exclude 'META-INF/rxjava.properties' + resources { + excludes += [ + 'META-INF/LICENSE.txt', + 'META-INF/LICENSE', + 'META-INF/NOTICE.txt', + 'META-INF/NOTICE', + 'META-INF/DEPENDENCIES', + 'META-INF/rxjava.properties' + ] + } } + android.applicationVariants.all { variant -> String variantName = variant.name String capVariantName = variantName.substring(0, 1).toUpperCase(Locale.ROOT) + variantName.substring(1) @@ -132,16 +132,16 @@ android { targetCompatibility JavaVersion.VERSION_1_8 } - lintOptions { - abortOnError false - htmlReport true - htmlOutput file("$project.buildDir/reports/lint/lint.html") - disable 'MissingTranslation' - } buildFeatures { viewBinding true } + lint { + abortOnError false + disable 'MissingTranslation' + htmlOutput file("$project.buildDir/reports/lint/lint.html") + htmlReport true + } } ext { @@ -236,7 +236,7 @@ dependencies { kapt "com.jakewharton:butterknife-compiler:${butterknifeVersion}" implementation 'eu.davidea:flexible-adapter:5.1.0' implementation 'eu.davidea:flexible-adapter-ui:1.0.0' - implementation fileTree(downloadWebRtc.getOutputPath()) + implementation fileTree(downloadWebRtc.libFile.path) implementation 'com.yarolegovich:lovely-dialog:1.1.1' implementation 'com.yarolegovich:mp:1.1.6' implementation 'me.zhanghai.android.effortlesspermissions:library:1.1.0' diff --git a/app/src/main/java/com/nextcloud/talk/activities/TakePhotoActivity.java b/app/src/main/java/com/nextcloud/talk/activities/TakePhotoActivity.java index b68e0dfd9..84b2e2262 100644 --- a/app/src/main/java/com/nextcloud/talk/activities/TakePhotoActivity.java +++ b/app/src/main/java/com/nextcloud/talk/activities/TakePhotoActivity.java @@ -54,8 +54,8 @@ import java.util.concurrent.ExecutionException; import androidx.annotation.NonNull; import androidx.annotation.Nullable; +import androidx.annotation.OptIn; import androidx.appcompat.app.AppCompatActivity; -import androidx.appcompat.content.res.AppCompatResources; import androidx.camera.camera2.interop.Camera2Interop; import androidx.camera.core.AspectRatio; import androidx.camera.core.Camera; @@ -360,6 +360,7 @@ public class TakePhotoActivity extends AppCompatActivity { return rotate; } + @OptIn(markerClass = androidx.camera.camera2.interop.ExperimentalCamera2Interop.class) private Preview getPreview(boolean crop) { Preview.Builder previewBuilder = new Preview.Builder() .setTargetAspectRatio(crop ? AspectRatio.RATIO_16_9 : AspectRatio.RATIO_4_3); diff --git a/app/src/main/java/com/nextcloud/talk/webrtc/MagicProximitySensor.java b/app/src/main/java/com/nextcloud/talk/webrtc/MagicProximitySensor.java index 364820e06..d91908ce8 100644 --- a/app/src/main/java/com/nextcloud/talk/webrtc/MagicProximitySensor.java +++ b/app/src/main/java/com/nextcloud/talk/webrtc/MagicProximitySensor.java @@ -170,14 +170,11 @@ public class MagicProximitySensor implements SensorEventListener { .append(", resolution: ").append(proximitySensor.getResolution()) .append(", max range: ").append(proximitySensor.getMaximumRange()) .append(", min delay: ").append(proximitySensor.getMinDelay()); - // Added in API level 20. info.append(", type: ").append(proximitySensor.getStringType()); - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { - // Added in API level 21. - info.append(", max delay: ").append(proximitySensor.getMaxDelay()) - .append(", reporting mode: ").append(proximitySensor.getReportingMode()) - .append(", isWakeUpSensor: ").append(proximitySensor.isWakeUpSensor()); - } + info.append(", max delay: ").append(proximitySensor.getMaxDelay()) + .append(", reporting mode: ").append(proximitySensor.getReportingMode()) + .append(", isWakeUpSensor: ").append(proximitySensor.isWakeUpSensor()); + Log.d(TAG, info.toString()); } } diff --git a/build.gradle b/build.gradle index 1198b1522..62bcbc01f 100644 --- a/build.gradle +++ b/build.gradle @@ -34,7 +34,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:4.1.3' + classpath 'com.android.tools.build:gradle:7.2.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:${kotlinVersion}" classpath 'gradle.plugin.com.github.spotbugs.snom:spotbugs-gradle-plugin:4.7.5' classpath "io.gitlab.arturbosch.detekt:detekt-gradle-plugin:1.19.0" diff --git a/buildSrc/src/main/groovy/com/nextcloud/talk/gradle/DownloadWebRtcTask.groovy b/buildSrc/src/main/groovy/com/nextcloud/talk/gradle/DownloadWebRtcTask.groovy index 36d69f1d1..b581678d5 100644 --- a/buildSrc/src/main/groovy/com/nextcloud/talk/gradle/DownloadWebRtcTask.groovy +++ b/buildSrc/src/main/groovy/com/nextcloud/talk/gradle/DownloadWebRtcTask.groovy @@ -48,7 +48,7 @@ abstract class DownloadWebRtcTask extends DefaultTask { return "https://github.com/nextcloud-releases/talk-clients-webrtc/releases/download/${webRtcVersion}-RC1/${getFileName()}" } - String getOutputPath() { + private String getOutputPath() { return "${project.buildDir}/download/${getFileName()}" } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 0da862568..d793ae032 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip diff --git a/scripts/analysis/findbugs-results.txt b/scripts/analysis/findbugs-results.txt index a14c1ee5a..cde50ca2f 100644 --- a/scripts/analysis/findbugs-results.txt +++ b/scripts/analysis/findbugs-results.txt @@ -1 +1 @@ -180 \ No newline at end of file +179 \ No newline at end of file diff --git a/scripts/analysis/lint-results.txt b/scripts/analysis/lint-results.txt index d63b4d48a..7eea77ad5 100644 --- a/scripts/analysis/lint-results.txt +++ b/scripts/analysis/lint-results.txt @@ -1,2 +1,2 @@ DO NOT TOUCH; GENERATED BY DRONE - Lint Report: 1 error and 104 warnings + Lint Report: 2 error and 130 warnings