This is a write-up showing how to build:
https://android.googlesource.com/platform/developers/build/+/bd027ea/prebuilts/gradle/Camera2Basic
An old Google camera testing app included in AOSP android-8.1.0_r46. Good for testing / prototyping.
Tested on Linux mint 6.1.0-43-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.162-1 (2026-02-08) x86_64 GNU/Linux
- Gradle 3.4.1
- Android Gradle Plugin 2.3.3
- Java 8
- SDK Platform 26 / Build-Tools 26.0.1
<aosp root dir>/android-sdk
Install JDK 8 (example: Temurin)
Add to ~/.bashrc:
function java_switch() {
export JAVA_HOME=$HOME/jdk8u472-b08
export PATH=$JAVA_HOME/bin:$PATH
echo "JAVA_HOME=$JAVA_HOME"
java -version
}
Usage:
java_switch
Add to ~/.bashrc:
function sdk_env() {
export ANDROID_SDK_ROOT=$HOME/<aosp root dir>/android-sdk
export ANDROID_HOME=$ANDROID_SDK_ROOT
export PATH=$ANDROID_SDK_ROOT/tools/bin:$ANDROID_SDK_ROOT/platform-tools:$PATH
echo "ANDROID_SDK_ROOT=$ANDROID_SDK_ROOT"
echo "ANDROID_HOME=$ANDROID_HOME"
echo "PATH updated"
}
Usage:
sdk_env
mkdir -p ~/<aosp root dir>/android-sdk
cd ~/<aosp root dir>/android-sdk
wget https://dl.google.com/android/repository/tools_r25.2.5-linux.zip
unzip tools_r25.2.5-linux.zip
Resulting layout must contain:
android-sdk/tools/bin/sdkmanager
Verify:
ls tools/bin/sdkmanager
java_switch
sdk_env
sdkmanager "platforms;android-26" "build-tools;26.0.1" "extras;android;m2repository"
Verify:
ls $ANDROID_SDK_ROOT/platforms/android-26/android.jar
ls $ANDROID_SDK_ROOT/build-tools/26.0.1/aapt
local.properties (Camera2Basic root):
sdk.dir=<absolute path to android-sdk>
Example:
sdk.dir=/home/user/<aosp root dir>/android-sdk
Replace the default:
Camera2Basic/Application/build.gradle
with the one from this repo.
./gradlew :Application:assembleDebug --no-daemon
Output:
Application/build/outputs/apk/debug/Application-debug.apk
