错误:包 android.hardware.camera2 不存在 OpenCV
Posted
技术标签:
【中文标题】错误:包 android.hardware.camera2 不存在 OpenCV【英文标题】:Error: package android.hardware.camera2 does not exist OpenCV 【发布时间】:2016-07-12 07:33:11 【问题描述】:我正在尝试将 OpenCV 模块添加到项目中,但我无法解决一些 gradle 问题。这是我的app.gradle
文件:
apply plugin: 'com.android.application'
android
compileSdkVersion 17
buildToolsVersion "23.0.2"
defaultConfig
applicationId "com.sveder.cardboardpassthrough"
minSdkVersion 8
targetSdkVersion 21
buildTypes
release
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
dependencies
compile 'com.android.support:support-v4:18.0.0'
compile files('libs/cardboard.jar')
compile project(':openCVLibrary')
这是 OpenCV (3.0) 模块的build.gradle
文件:
apply plugin: 'com.android.library'
android
compileSdkVersion 17
buildToolsVersion "23.0.2"
defaultConfig
minSdkVersion 8
targetSdkVersion 21
buildTypes
release
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
如您所见,我的应用程序和 OpenCV gradle 文件匹配,但每当我尝试构建项目时,我都会遇到错误 error: package android.hardware.camera2
不存在。我做错了什么?
提前致谢。
【问题讨论】:
【参考方案1】:将compileSdkVersion 17
更改为最少 21(推荐最新)。因为android.hardware.camera2
是added in API 21。
【讨论】:
我正在开发的手机的 API 版本为 17...这是否意味着我必须切换到旧版本的 OpenCV?是否没有“兼容性”模式可以让我恢复到旧的 Camera API? 你的目标已经是 `minSdkVersion 8`,所以它可以在 17 上运行。 问题是,它没有。它仍然抱怨缺少 camera2,即使它应该默认使用旧的 Camera API。 不,我是说。将compileSdkVersion
更改为23,然后它也可以在17 上工作,因为minSdkVersion 是8。camera2
无法导入,因为它是在21 中添加的。
做到了!谢谢!!【参考方案2】:
除了 build.gradle 。检查项目结构Ctrl +Alt+Shift+s
中的设置。这解决了我的问题。
【讨论】:
谢谢。这有帮助。唯一的事情,我不得不按 F4 来打开模块设置。只有这样我才能看到相同的图片:) 谢谢这个帮助。这应该是正确的答案。【参考方案3】:我尝试按照 Rohit 所说的那样更改 sdkversion,但问题就在那里。但后来我意识到我需要更改 OpenCV 库的 sdkversion。所以按 Shift+Ctrl+Alt+s,进入 OpenCV 库的属性选项卡。将 sdkVersion 更改为 21 或更高版本。Here is the screenshot, in case if you are confused with tabs
【讨论】:
以上是关于错误:包 android.hardware.camera2 不存在 OpenCV的主要内容,如果未能解决你的问题,请参考以下文章
Python 'No module named' 错误; “包”不是包