Ionic项目Android构建失败:ProcessException及AAPT资源匹配错误求助
我来帮你搞定这个构建问题!你遇到的No resource found that matches the given name: attr 'android:keyboardNavigationCluster'错误,本质是Cordova Android平台版本和本地Android SDK组件不匹配导致的——android:keyboardNavigationCluster是Android API 26(也就是Android 8.0)才引入的属性,而你安装的android@6.2.2这个Cordova平台版本,刚好需要依赖API 26的SDK资源,但你的本地SDK里没装对应的组件。
下面是具体的解决步骤:
1. 安装必要的Android SDK组件
首先得确保你的本地Android SDK有API 26相关的资源:
- 打开Android SDK Manager(可以在命令行输入
android启动,或者用Android Studio的SDK管理器) - 勾选安装**Android 8.0 (API 26)**的SDK Platform
- 同时安装SDK Build Tools 26.0.2(这个版本和Cordova Android 6.2.2兼容性最好)
- 别忘了安装Android Support Repository(很多第三方依赖库都需要这个)
2. 调整项目的Android构建配置
修改项目里的构建参数,让它对应上API 26:
- 打开项目根目录下的
platforms/android/project.properties文件 - 找到
target=android-xx这一行,把它改成target=android-26 - 如果文件里没有
android.buildToolsVersion这一行,就添加:android.buildToolsVersion=26.0.2
3. 清理并重新构建项目
做完上面的配置,咱们把旧的构建缓存清掉,重新来:
- 先移除现有Android平台:
ionic cordova platform remove android - 重新添加指定版本的平台:
ionic cordova platform add android@6.2.2 - 清理构建缓存:
ionic cordova clean android - 最后尝试构建:
ionic cordova build android
另外补充一下你之前遇到的wrapper not found错误,其实也是因为android@6.1.2需要的SDK组件你没安装,换成6.2.2后只是问题变了,但核心都是SDK版本和平台版本不匹配的问题,按照上面的步骤应该就能解决啦。
内容的提问来源于stack exchange,提问作者Sheetal
相关产品推荐
相关产品推荐

