This repository contains the source code for building AndroidUSBCamera AAR files locally.
- Android SDK with NDK (version 24.0.8215888 recommended for compatibility)
- CMake 3.22.1 or newer
- Java 11 (Gradle 6.7.1 doesn't support Java 17+)
- Create a
local.propertiesfile in the project root:
sdk.dir=/path/to/your/Android/sdk
ndk.dir=/path/to/your/Android/sdk/ndk/24.0.8215888
cmake.dir=/path/to/your/Android/sdk/cmake/3.22.1- Make sure gradlew is executable:
chmod +x gradlewBuild all AAR files:
JAVA_HOME=/path/to/java11 ./gradlew assembleReleaseOr build individual modules:
# Build libausbc AAR
JAVA_HOME=/path/to/java11 ./gradlew :libausbc:assembleRelease
# Build libuvc AAR
JAVA_HOME=/path/to/java11 ./gradlew :libuvc:assembleRelease
# Build libnative AAR
JAVA_HOME=/path/to/java11 ./gradlew :libnative:assembleReleaseAfter successful build, the AAR files will be located at:
libausbc/build/outputs/aar/libausbc-release.aarlibuvc/build/outputs/aar/libuvc-release.aarlibnative/build/outputs/aar/libnative-release.aar
All three AAR files are required for complete functionality:
- libausbc: Main camera client library
- libuvc: UVC camera native implementation
- libnative: Native utilities (YUVUtils, MP3 encoding, etc.)
- The build is configured for ARM architectures only (armeabi-v7a, arm64-v8a) to avoid PIC compilation issues with x86 architectures on newer NDK versions