找不到与给定名称匹配的资源:attr'android:keyboardNavigationCluster'

时间:2017-10-09 19:02:30

标签: android node.js angular cordova ionic-framework

我尝试使用ionic cordova run android --prod时,我的Ionic项目中遇到了这个奇怪的错误。我尝试删除和读取平台,删除和读取节点模块,以及切换npm和节点版本都无济于事。

问题:有没有人知道如何解决这个神秘的问题?

C:\...\platforms\android\build\intermediates\res\merged\debug\values-v26\values-v26.xml:15: 

error: Error: No resource found that matches the given name: attr 'android:keyboardNavigationCluster'.

FAILED

BUILD FAILED

Total time: 26.595 secs

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':processDebugResources'.
> com.android.ide.common.process.ProcessException: Failed to execute aapt

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
Error: cmd: Command failed with exit code 1 Error output:
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
C:\...\platforms\android\build\intermediates\res\merged\debug\values-v26\values-v26.xml:15:21-54: AAPT: No resource found that matches the given name: attr 'android:keyboardNavigationCluster'.

C:\...\platforms\android\build\intermediates\res\merged\debug\values-v26\values-v26.xml:15: error: Error: No resource found that matches the given name: attr 'android:keyboardNavigationCluster'.



FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':processDebugResources'.
> com.android.ide.common.process.ProcessException: Failed to execute aapt

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

[ERROR] An error occurred while running cordova run android (exit code 1).
Ionic info: (run ionic info from a terminal/cmd prompt and paste output below):

cli packages: (C:…\node_modules)

@ionic/cli-utils  : 1.12.0
ionic (Ionic CLI) : 3.12.0
global packages:

cordova (Cordova CLI) : 7.0.0
local packages:

@ionic/app-scripts : 3.0.0
Cordova Platforms  : android 6.2.3
Ionic Framework    : ionic-angular 3.7.1
System:

Android SDK Tools : 25.2.5
Node              : v6.11.4
npm               : 3.10.10
OS                : Windows 10
Misc:

backend : legacy

编辑:这里的每个请求是我的cordova插件列表

    <plugin name="cordova-plugin-app-version" spec="^0.1.9" />
    <plugin name="cordova-plugin-camera" spec="^2.4.1">
    <plugin name="cordova-plugin-compat" spec="^1.2.0" />
    <plugin name="cordova-plugin-device" spec="^1.1.6" />
    <plugin name="cordova-plugin-file" spec="^4.3.3" />
    <plugin name="cordova-plugin-file-transfer" spec="^1.6.3" />
    <plugin name="cordova-plugin-filepath" spec="^1.1.0" />
    <plugin name="cordova-plugin-geolocation" spec="^2.4.3">
        <variable name="GEOLOCATION_USAGE_DESCRIPTION" value="To determine geolocation for clock in/out purposes." />
    </plugin>
    <plugin name="cordova-plugin-inappbrowser" spec="^1.7.1" />
    <plugin name="cordova-plugin-splashscreen" spec="^4.0.3" />
    <plugin name="cordova-plugin-statusbar" spec="^2.2.3" />
    <plugin name="cordova-plugin-whitelist" spec="^1.3.2" />
    <plugin name="cordova.plugins.diagnostic" spec="^3.6.8" />
    <engine name="android" spec="~6.2.3" />

1 个答案:

答案 0 :(得分:3)

这很可能与cordova诊断插件有关。尝试安装可以解决问题的版本3.7.1

cordova plugin add cordova.plugins.diagnostic@3.7.1

根本原因是gradle正在寻找它找不到的v26资源。我们会更详细地解释here

您可能还需要将cordova-android更新为版本6.3.0cordova platform add android@6.3.0)并升级到最新的Android SDK工具(通过Android Studio)。当你这样做时,不要忘记删除cordova-plugin-compat