diff --git a/.github/scripts/gradlew_recursive.sh b/.github/scripts/gradlew_recursive.sh deleted file mode 100755 index e088cad0..00000000 --- a/.github/scripts/gradlew_recursive.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash - -# Copyright (C) 2020 The Android Open Source Project -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -set -xe - -# Crawl all gradlew files which indicate an Android project -# You may edit this if your repo has a different project structure -for GRADLEW in `find . -name "gradlew"` ; do - SAMPLE=$(dirname "${GRADLEW}") - # Tell Gradle that this is a CI environment and disable parallel compilation - bash "$GRADLEW" -p "$SAMPLE" -Pci --no-parallel --stacktrace $@ -done diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml index f7fabb90..dbb6ddab 100644 --- a/.github/workflows/android.yml +++ b/.github/workflows/android.yml @@ -15,30 +15,220 @@ name: Android CI on: + workflow_dispatch: push: branches: [ main ] pull_request: branches: [ main ] jobs: - - build: - name: Build - runs-on: ubuntu-18.04 - + camerax_basic: + name: CameraXBasic + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: set up JDK 17 + uses: actions/setup-java@v4 + with: + distribution: 'zulu' + java-version: '17' + - name: Build project + working-directory: CameraXBasic + run: ./gradlew assembleDebug + - name: Zip artifacts + working-directory: CameraXBasic + run: zip -r assemble.zip . -i '**/build/*.apk' '**/build/*.aab' '**/build/*.aar' '**/build/*.so' + - name: Upload artifacts + uses: actions/upload-artifact@v4 + with: + name: camerax_basic_assemble + path: CameraXBasic/assemble.zip + camerax_extensions: + name: CameraXExtensions + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: set up JDK 17 + uses: actions/setup-java@v4 + with: + distribution: 'zulu' + java-version: '17' + - name: Build project + working-directory: CameraXExtensions + run: ./gradlew assembleDebug + - name: Zip artifacts + working-directory: CameraXExtensions + run: zip -r assemble.zip . -i '**/build/*.apk' '**/build/*.aab' '**/build/*.aar' '**/build/*.so' + - name: Upload artifacts + uses: actions/upload-artifact@v4 + with: + name: camerax_extensions_assemble + path: CameraXExtensions/assemble.zip + camerax_video: + name: CameraXVideo + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: set up JDK 17 + uses: actions/setup-java@v4 + with: + distribution: 'zulu' + java-version: '17' + - name: Build project + working-directory: CameraXVideo + run: ./gradlew assembleDebug + - name: Zip artifacts + working-directory: CameraXVideo + run: zip -r assemble.zip . -i '**/build/*.apk' '**/build/*.aab' '**/build/*.aar' '**/build/*.so' + - name: Upload artifacts + uses: actions/upload-artifact@v4 + with: + name: camerax_video_assemble + path: CameraXVideo/assemble.zip + camerax_advanced: + name: CameraXAdvanced + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: set up JDK 17 + uses: actions/setup-java@v4 + with: + distribution: 'zulu' + java-version: '17' + - name: Build project + working-directory: CameraXAdvanced + run: ./gradlew assembleDebug + - name: Zip artifacts + working-directory: CameraXAdvanced + run: zip -r assemble.zip . -i '**/build/*.apk' '**/build/*.aab' '**/build/*.aar' '**/build/*.so' + - name: Upload artifacts + uses: actions/upload-artifact@v4 + with: + name: camerax_advanced_assemble + path: CameraXAdvanced/assemble.zip + camerax_mlkit: + name: CameraX-MLKit + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: set up JDK 17 + uses: actions/setup-java@v4 + with: + distribution: 'zulu' + java-version: '17' + - name: Build project + working-directory: CameraX-MLKit + run: ./gradlew assembleDebug + - name: Zip artifacts + working-directory: CameraX-MLKit + run: zip -r assemble.zip . -i '**/build/*.apk' '**/build/*.aab' '**/build/*.aar' '**/build/*.so' + - name: Upload artifacts + uses: actions/upload-artifact@v4 + with: + name: camerax_mlkit_assemble + path: CameraX-MLKit/assemble.zip + camera2_basic: + name: Camera2Basic + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: set up JDK 17 + uses: actions/setup-java@v4 + with: + distribution: 'zulu' + java-version: '17' + - name: Build project + working-directory: Camera2Basic + run: ./gradlew assembleDebug + - name: Zip artifacts + working-directory: Camera2Basic + run: zip -r assemble.zip . -i '**/build/*.apk' '**/build/*.aab' '**/build/*.aar' '**/build/*.so' + - name: Upload artifacts + uses: actions/upload-artifact@v4 + with: + name: camera2_basic_assemble + path: Camera2Basic/assemble.zip + camera2_extensions: + name: Camera2Extensions + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: set up JDK 17 + uses: actions/setup-java@v4 + with: + distribution: 'zulu' + java-version: '17' + - name: Build project + working-directory: Camera2Extensions + run: ./gradlew assembleDebug + - name: Zip artifacts + working-directory: Camera2Extensions + run: zip -r assemble.zip . -i '**/build/*.apk' '**/build/*.aab' '**/build/*.aar' '**/build/*.so' + - name: Upload artifacts + uses: actions/upload-artifact@v4 + with: + name: camera2_extensions_assemble + path: Camera2Extensions/assemble.zip + camera2_video: + name: Camera2Video + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: set up JDK 17 + uses: actions/setup-java@v4 + with: + distribution: 'zulu' + java-version: '17' + - name: Build project + working-directory: Camera2Video + run: ./gradlew assembleDebug + - name: Zip artifacts + working-directory: Camera2Video + run: zip -r assemble.zip . -i '**/build/*.apk' '**/build/*.aab' '**/build/*.aar' '**/build/*.so' + - name: Upload artifacts + uses: actions/upload-artifact@v4 + with: + name: camera2_video_assemble + path: Camera2Video/assemble.zip + camera2_slowmotion: + name: Camera2SlowMotion + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: set up JDK 11 + uses: actions/setup-java@v4 + with: + distribution: 'zulu' + java-version: '11' + - name: Build project + working-directory: Camera2SlowMotion + run: ./gradlew assembleDebug + - name: Zip artifacts + working-directory: Camera2SlowMotion + run: zip -r assemble.zip . -i '**/build/*.apk' '**/build/*.aab' '**/build/*.aar' '**/build/*.so' + - name: Upload artifacts + uses: actions/upload-artifact@v4 + with: + name: camera2_slowmotion_assemble + path: Camera2SlowMotion/assemble.zip + camerautils: + name: CameraUtils + runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: set up JDK 11 - uses: actions/setup-java@v2 + uses: actions/setup-java@v4 with: distribution: 'zulu' java-version: '11' - name: Build project - run: .github/scripts/gradlew_recursive.sh assembleDebug + working-directory: CameraUtils + run: ./gradlew assembleDebug - name: Zip artifacts + working-directory: CameraUtils run: zip -r assemble.zip . -i '**/build/*.apk' '**/build/*.aab' '**/build/*.aar' '**/build/*.so' - name: Upload artifacts - uses: actions/upload-artifact@v1 + uses: actions/upload-artifact@v4 with: - name: assemble - path: assemble.zip + name: camerautils_assemble + path: CameraUtils/assemble.zip diff --git a/.github/workflows/copy-branch.yml b/.github/workflows/copy-branch.yml index f8f8572d..a1a0f006 100644 --- a/.github/workflows/copy-branch.yml +++ b/.github/workflows/copy-branch.yml @@ -5,6 +5,7 @@ name: Duplicates main to old master branch # Controls when the action will run. Triggers the workflow on push or pull request # events but only for the main branch on: + workflow_dispatch: push: branches: [ main ] diff --git a/.java-version b/.java-version new file mode 100644 index 00000000..98d9bcb7 --- /dev/null +++ b/.java-version @@ -0,0 +1 @@ +17 diff --git a/Camera2Basic/.java-version b/Camera2Basic/.java-version new file mode 100644 index 00000000..8e2afd34 --- /dev/null +++ b/Camera2Basic/.java-version @@ -0,0 +1 @@ +17 \ No newline at end of file diff --git a/Camera2Basic/app/build.gradle b/Camera2Basic/app/build.gradle index 5c90a4a0..c800fd15 100644 --- a/Camera2Basic/app/build.gradle +++ b/Camera2Basic/app/build.gradle @@ -20,6 +20,12 @@ apply plugin: 'kotlin-kapt' apply plugin: "androidx.navigation.safeargs" android { + defaultConfig { + vectorDrawables.useSupportLibrary = true + } + buildFeatures { + viewBinding true + } namespace "com.example.android.camera2.basic" compileSdk 34 defaultConfig { @@ -32,12 +38,12 @@ android { } compileOptions { - sourceCompatibility rootProject.ext.java_version - targetCompatibility rootProject.ext.java_version + sourceCompatibility JavaVersion.VERSION_17 + targetCompatibility JavaVersion.VERSION_17 } kotlinOptions { - jvmTarget = "$rootProject.ext.java_version" + jvmTarget = "17" } buildTypes { @@ -53,6 +59,8 @@ android { } } + + dependencies { implementation project(':utils') diff --git a/Camera2SlowMotion/.java-version b/Camera2SlowMotion/.java-version new file mode 100644 index 00000000..9d607966 --- /dev/null +++ b/Camera2SlowMotion/.java-version @@ -0,0 +1 @@ +11 \ No newline at end of file diff --git a/CameraUtils/.java-version b/CameraUtils/.java-version new file mode 100644 index 00000000..9d607966 --- /dev/null +++ b/CameraUtils/.java-version @@ -0,0 +1 @@ +11 \ No newline at end of file diff --git a/CameraXExtensions/.java-version b/CameraXExtensions/.java-version new file mode 100644 index 00000000..8e2afd34 --- /dev/null +++ b/CameraXExtensions/.java-version @@ -0,0 +1 @@ +17 \ No newline at end of file diff --git a/CameraXExtensions/gradle/wrapper/gradle-wrapper.properties b/CameraXExtensions/gradle/wrapper/gradle-wrapper.properties index 3d714831..39bbb124 100644 --- a/CameraXExtensions/gradle/wrapper/gradle-wrapper.properties +++ b/CameraXExtensions/gradle/wrapper/gradle-wrapper.properties @@ -16,7 +16,7 @@ #Wed Aug 03 16:12:29 EDT 2022 distributionBase=GRADLE_USER_HOME -distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-all.zip distributionPath=wrapper/dists zipStorePath=wrapper/dists zipStoreBase=GRADLE_USER_HOME diff --git a/HdrViewfinder/.java-version b/HdrViewfinder/.java-version new file mode 100644 index 00000000..9d607966 --- /dev/null +++ b/HdrViewfinder/.java-version @@ -0,0 +1 @@ +11 \ No newline at end of file