0

我对 Android Studio 和 OpenCV 都很陌生,所以如果这是一个糟糕的问题,请原谅我。

下载并安装了 OpenCV 通用库以及适用于 Android 的 OpenCV SDK 后,我现在想使用 Android Studio 和 Android NDK 编译示例 OpenCV 项目之一,以便在我的 Android 手机上使用。

我已按照此页面上的说明进行操作,但仍然遇到 gradle 构建错误。错误输出语句如下:

.../AndroidStudioProjects/MyProject/app/build/intermediates/manifests/full/debug/AndroidManifest.xml

错误:(13, 23) 未找到与给定名称匹配的资源(在“图标”处,值为“@drawable/ic_launcher”)。

错误:(15, 24) 未找到与给定名称匹配的资源(在“主题”处,值为“@style/AppTheme”)。

“任务':app:ProcessDebugResources'的执行失败”

以我非常基本的理解,我猜这意味着 gradle 正在读取build/intermediates/manifests/full/debug目录中的 AndroidManifest.xml,而这个清单正在引用不存在的资源。

如果这是我创建的目录和 xml 文件,我会寻找替换丢失的资源或编辑清单。但是由于构建目录中的所有文件和目录都是由 gradle 生成的,所以我不知道该怎么做。

为什么 gradle 会生成一个目录和文件(即 AndroidManifest.xml),而不是另一个(即缺少的资源)?

我对问题根源的最佳猜测是上述链接提供的build.gradle文件中的某些内容与我的特定设置不匹配。我尝试调整build.gradle以使用不同的 SDK 和 buildTools 版本,但这并没有帮助。

我在 Mac OSX 10.10.4 上运行 Android Studio 1.0.1

如果有人能指出我正确的方向,我将不胜感激。

编辑:这是来自app/src/main目录中的主 AndroidManifest.xml 的文本。

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.baneofsociety.pleasework">

<application android:allowBackup="true" android:label="@string/app_name"
    android:icon="@drawable/ic_launcher" android:theme="@style/AppTheme">

</application>

</manifest>

根据我在链接中的说明, app/src/main/res中的所有内容都直接从 OpenCV 示例文件中复制。我在app/src/main/res/values下没有找到 styles.xml ,只有 strings.xml。

4

2 回答 2

0

Awanish Raj 的问题“您从哪里复制了 AndroidManifest.xml?” 是什么让我走上了正轨。我仍在使用由 Android Studio 生成的通用 AndroidManifest.xml,而不是从 OpenCV 示例中复制 xml 文件。用示例替换通用 xml 解决了问题。

于 2015-07-22T07:52:33.663 回答
0

问题是您正在尝试引用资源ic_launcher,而实际上您的项目中不存在AppTheme资源。AndroidManifest.xml当您盲目地复制粘贴代码时,通常会发生这种情况。

如下更改您的图标AndroidManifest.xml,因为您已经说过icon.png

<application android:allowBackup="true" android:label="@string/app_name"
android:icon="@drawable/icon" android:theme="@style/AppTheme">

您还需要添加一个styles.xml文件。为此,在您的 IDE 中创建一个新项目并将自动生成的styles.xml文件复制到res/values/目录。通常styles.xml包含这样的内容:

<resources>

    <!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
    </style>

</resources>

希望能帮助到你!请阅读更多文档。:)

于 2015-07-22T07:23:43.050 回答