UVCCamera
UVCCamera copied to clipboard
Safely build 64-bit binaries along with some modernization.
This pull-req contains several changes to come over 32-bit/64-bit situation of new Google Play's policy.
Changes made:
- Remove mips from
APP_ABI
because recent NDK lacks support for them- Specifying
all
is reasonable especially for recent NDKs because at least NDK r18 complainsarmeabi
is deprecated.
- Specifying
- Upgrade Gradle and corresponding build scripts for better app integration
- Also upgrade
versionBuildTool
to align build tools with Android gradle plugin
- Also upgrade
- Specify
https
instead ofhttp
for URI schema of libcommon to avoid possible DNS poisoning attack
Note: According to recent Google's annoucements, APK size issue addressed here is meant to be mitigated via Android App Bundle.
Note: You will see Android NDK: android-14 is unsupported. Using minimum supported version android-16.
warning when built with NDK r18 but you can easilly fix this by specifying older NDKs on local.properties
file if you really need to keep support for Android 4.0.x. I assume most developers (targetting android-16+) can harmlessly ignore this warning because their app themselves will be compiled with minSdkVersion 16
or later.
I'm great to see this happen! Now I'll rebase changes upon the latest master branch.
Now we have only 1 line to change :+1:
Merge this branch is needed because UVCamera library is compiled on 32-bit, causing couldn't find "libjpeg-turbo1500.so" exception if there are 64-bit libraries on the project
APP_ABI := all does not compile for me, use APP_ABI := armeabi armeabi-v7a arm64-v8a instead
Also uncomment #NDK_TOOLCHAIN_VERSION := 4.9 line in Application.mk before generating build. Otherwise the library won't work as expected.