Skip to content

Commit 71fcdcb

Browse files
authored
Merge pull request #636 from android/madebymozart/camera-samples-overhaul
Refactor, Modernize & Enhance Android Camera Samples with new features
2 parents 7f4e3b0 + 1fc21c3 commit 71fcdcb

965 files changed

Lines changed: 27579 additions & 33039 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.claude/settings.local.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"permissions": {
3+
"allow": [
4+
"Bash(gh pr *)",
5+
"Bash(gh api *)",
6+
"Bash(python3 -c \"import json,sys; data=json.load\\(sys.stdin\\); print\\(f'Total inline comments: {len\\(data\\)}'\\); [print\\(f'\\\\n--- {c[\\\\\"user\\\\\"][\\\\\"login\\\\\"]} on {c.get\\(\\\\\"path\\\\\"\\)}:{c.get\\(\\\\\"line\\\\\"\\) or c.get\\(\\\\\"original_line\\\\\"\\)} ---\\\\n{c[\\\\\"body\\\\\"]}'\\) for c in data]\")",
7+
"Bash(python3 -c \"import json,sys; data=json.load\\(sys.stdin\\); [print\\(f'\\\\n=== Review by {r[\\\\\"user\\\\\"][\\\\\"login\\\\\"]} [{r[\\\\\"state\\\\\"]}] ===\\\\n{r.get\\(\\\\\"body\\\\\",\\\\\"\\\\\"\\)}'\\) for r in data]\")"
8+
]
9+
}
10+
}

.editorconfig

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[*.{kt,kts}]
2+
# @Composable functions are intentionally PascalCase across this project.
3+
ktlint_function_naming_ignore_when_annotated_with = Composable

.github/scripts/copy_utils.sh

Lines changed: 0 additions & 32 deletions
This file was deleted.

.github/workflows/android.yml

Lines changed: 21 additions & 200 deletions
Original file line numberDiff line numberDiff line change
@@ -22,213 +22,34 @@ on:
2222
branches: [ main ]
2323

2424
jobs:
25-
camerax_basic:
26-
name: CameraXBasic
25+
build:
26+
name: Build & check
2727
runs-on: ubuntu-latest
2828
steps:
2929
- uses: actions/checkout@v4
30-
- name: set up JDK 17
31-
uses: actions/setup-java@v4
32-
with:
33-
distribution: 'zulu'
34-
java-version: '17'
35-
- name: Build project
36-
working-directory: CameraXBasic
37-
run: ./gradlew assembleDebug
38-
- name: Zip artifacts
39-
working-directory: CameraXBasic
40-
run: zip -r assemble.zip . -i '**/build/*.apk' '**/build/*.aab' '**/build/*.aar' '**/build/*.so'
41-
- name: Upload artifacts
42-
uses: actions/upload-artifact@v4
43-
with:
44-
name: camerax_basic_assemble
45-
path: CameraXBasic/assemble.zip
46-
camerax_extensions:
47-
name: CameraXExtensions
48-
runs-on: ubuntu-latest
49-
steps:
50-
- uses: actions/checkout@v4
51-
- name: set up JDK 17
52-
uses: actions/setup-java@v4
53-
with:
54-
distribution: 'zulu'
55-
java-version: '17'
56-
- name: Build project
57-
working-directory: CameraXExtensions
58-
run: ./gradlew assembleDebug
59-
- name: Zip artifacts
60-
working-directory: CameraXExtensions
61-
run: zip -r assemble.zip . -i '**/build/*.apk' '**/build/*.aab' '**/build/*.aar' '**/build/*.so'
62-
- name: Upload artifacts
63-
uses: actions/upload-artifact@v4
64-
with:
65-
name: camerax_extensions_assemble
66-
path: CameraXExtensions/assemble.zip
67-
camerax_video:
68-
name: CameraXVideo
69-
runs-on: ubuntu-latest
70-
steps:
71-
- uses: actions/checkout@v4
72-
- name: set up JDK 17
73-
uses: actions/setup-java@v4
74-
with:
75-
distribution: 'zulu'
76-
java-version: '17'
77-
- name: Build project
78-
working-directory: CameraXVideo
79-
run: ./gradlew assembleDebug
80-
- name: Zip artifacts
81-
working-directory: CameraXVideo
82-
run: zip -r assemble.zip . -i '**/build/*.apk' '**/build/*.aab' '**/build/*.aar' '**/build/*.so'
83-
- name: Upload artifacts
84-
uses: actions/upload-artifact@v4
85-
with:
86-
name: camerax_video_assemble
87-
path: CameraXVideo/assemble.zip
88-
camerax_advanced:
89-
name: CameraXAdvanced
90-
runs-on: ubuntu-latest
91-
steps:
92-
- uses: actions/checkout@v4
93-
- name: set up JDK 17
94-
uses: actions/setup-java@v4
95-
with:
96-
distribution: 'zulu'
97-
java-version: '17'
98-
- name: Build project
99-
working-directory: CameraXAdvanced
100-
run: ./gradlew assembleDebug
101-
- name: Zip artifacts
102-
working-directory: CameraXAdvanced
103-
run: zip -r assemble.zip . -i '**/build/*.apk' '**/build/*.aab' '**/build/*.aar' '**/build/*.so'
104-
- name: Upload artifacts
105-
uses: actions/upload-artifact@v4
106-
with:
107-
name: camerax_advanced_assemble
108-
path: CameraXAdvanced/assemble.zip
109-
camerax_mlkit:
110-
name: CameraX-MLKit
111-
runs-on: ubuntu-latest
112-
steps:
113-
- uses: actions/checkout@v4
114-
- name: set up JDK 17
115-
uses: actions/setup-java@v4
116-
with:
117-
distribution: 'zulu'
118-
java-version: '17'
119-
- name: Build project
120-
working-directory: CameraX-MLKit
121-
run: ./gradlew assembleDebug
122-
- name: Zip artifacts
123-
working-directory: CameraX-MLKit
124-
run: zip -r assemble.zip . -i '**/build/*.apk' '**/build/*.aab' '**/build/*.aar' '**/build/*.so'
125-
- name: Upload artifacts
126-
uses: actions/upload-artifact@v4
127-
with:
128-
name: camerax_mlkit_assemble
129-
path: CameraX-MLKit/assemble.zip
130-
camera2_basic:
131-
name: Camera2Basic
132-
runs-on: ubuntu-latest
133-
steps:
134-
- uses: actions/checkout@v4
135-
- name: set up JDK 17
136-
uses: actions/setup-java@v4
137-
with:
138-
distribution: 'zulu'
139-
java-version: '17'
140-
- name: Build project
141-
working-directory: Camera2Basic
142-
run: ./gradlew assembleDebug
143-
- name: Zip artifacts
144-
working-directory: Camera2Basic
145-
run: zip -r assemble.zip . -i '**/build/*.apk' '**/build/*.aab' '**/build/*.aar' '**/build/*.so'
146-
- name: Upload artifacts
147-
uses: actions/upload-artifact@v4
148-
with:
149-
name: camera2_basic_assemble
150-
path: Camera2Basic/assemble.zip
151-
camera2_extensions:
152-
name: Camera2Extensions
153-
runs-on: ubuntu-latest
154-
steps:
155-
- uses: actions/checkout@v4
156-
- name: set up JDK 17
157-
uses: actions/setup-java@v4
158-
with:
159-
distribution: 'zulu'
160-
java-version: '17'
161-
- name: Build project
162-
working-directory: Camera2Extensions
163-
run: ./gradlew assembleDebug
164-
- name: Zip artifacts
165-
working-directory: Camera2Extensions
166-
run: zip -r assemble.zip . -i '**/build/*.apk' '**/build/*.aab' '**/build/*.aar' '**/build/*.so'
167-
- name: Upload artifacts
168-
uses: actions/upload-artifact@v4
169-
with:
170-
name: camera2_extensions_assemble
171-
path: Camera2Extensions/assemble.zip
172-
camera2_video:
173-
name: Camera2Video
174-
runs-on: ubuntu-latest
175-
steps:
176-
- uses: actions/checkout@v4
177-
- name: set up JDK 17
30+
31+
- name: Set up JDK 17
17832
uses: actions/setup-java@v4
17933
with:
18034
distribution: 'zulu'
18135
java-version: '17'
182-
- name: Build project
183-
working-directory: Camera2Video
184-
run: ./gradlew assembleDebug
185-
- name: Zip artifacts
186-
working-directory: Camera2Video
187-
run: zip -r assemble.zip . -i '**/build/*.apk' '**/build/*.aab' '**/build/*.aar' '**/build/*.so'
188-
- name: Upload artifacts
189-
uses: actions/upload-artifact@v4
190-
with:
191-
name: camera2_video_assemble
192-
path: Camera2Video/assemble.zip
193-
camera2_slowmotion:
194-
name: Camera2SlowMotion
195-
runs-on: ubuntu-latest
196-
steps:
197-
- uses: actions/checkout@v4
198-
- name: set up JDK 11
199-
uses: actions/setup-java@v4
200-
with:
201-
distribution: 'zulu'
202-
java-version: '11'
203-
- name: Build project
204-
working-directory: Camera2SlowMotion
205-
run: ./gradlew assembleDebug
206-
- name: Zip artifacts
207-
working-directory: Camera2SlowMotion
208-
run: zip -r assemble.zip . -i '**/build/*.apk' '**/build/*.aab' '**/build/*.aar' '**/build/*.so'
209-
- name: Upload artifacts
210-
uses: actions/upload-artifact@v4
211-
with:
212-
name: camera2_slowmotion_assemble
213-
path: Camera2SlowMotion/assemble.zip
214-
camerautils:
215-
name: CameraUtils
216-
runs-on: ubuntu-latest
217-
steps:
218-
- uses: actions/checkout@v4
219-
- name: set up JDK 11
220-
uses: actions/setup-java@v4
221-
with:
222-
distribution: 'zulu'
223-
java-version: '11'
224-
- name: Build project
225-
working-directory: CameraUtils
36+
cache: gradle
37+
38+
- name: Set up Android SDK
39+
uses: android-actions/setup-android@v3
40+
41+
# The project compiles against API 37 (Android 17); install that platform.
42+
- name: Install compileSdk 37 platform
43+
run: yes | sdkmanager "platforms;android-37.0" > /dev/null
44+
45+
- name: Check formatting (Spotless)
46+
run: ./gradlew spotlessCheck
47+
48+
- name: Assemble debug
22649
run: ./gradlew assembleDebug
227-
- name: Zip artifacts
228-
working-directory: CameraUtils
229-
run: zip -r assemble.zip . -i '**/build/*.apk' '**/build/*.aab' '**/build/*.aar' '**/build/*.so'
230-
- name: Upload artifacts
50+
51+
- name: Upload debug APK
23152
uses: actions/upload-artifact@v4
23253
with:
233-
name: camerautils_assemble
234-
path: CameraUtils/assemble.zip
54+
name: app-debug
55+
path: app/build/outputs/apk/debug/app-debug.apk

0 commit comments

Comments
 (0)