我有一个应用程序,使用camera2 API和旧的相机版本。问题是,出于显而易见的原因,我需要用minSdkVersion 16生成一个APK,而camera2没有一起编译。
我为Camera2制作了一个独家照片应用程序,快速解决了这个问题。我检测到用户的Android版本,如果大于或等于5.0 (21),就触发这个特定应用程序的意图。这个问题我找不到一个很好的解决办法。
所以..。在这种情况下,我如何只生成APK?
发布于 2016-12-14 14:41:09
选项A:使用这两种API
步骤1:将compileSdkVersion设置为21或更高。理想情况下,将其设置为25,用于最新版本的Android。
步骤2:为两个API编写代码。
步骤3:仅在设备运行Android android.hardware.camera2 5.0+时调用使用5.0+类的代码:
if (Build.VERSION.SDK_INT>=Build.VERSION_CODES.LOLLIPOP) {
// use camera2
}
else {
// use Camera
}选项B:只使用经典相机API
android.hardware.Camera在Android7.1和更旧的设备上运行得很好。在从Android中删除android.hardware.Camera之前,只需使用它即可。但是,您将无法利用android.hardware.camera2类提供的任何新特性。
https://stackoverflow.com/questions/41145114
复制相似问题