离子android构建失败,找不到匹配项

时间:2017-03-08 20:12:11

标签: android cordova ionic-framework

我尝试使用ionic构建android,但是我收到以下错误:

/Users/xxx/dev/workspace/project/platforms/android/build/intermediates/res/merged/armv7/debug/values-v24/values-v24.xml:3: AAPT: Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Borderless.Colored'.

对于我所研究的内容,这与不匹配的Android SDK版本有关,但我确实已将所有版本对齐:

Android SDK: 23
Android Build-tools: 23.0.3 (also got 23.0.2 and 23.0.1)
Android Platform-tools: 23.1.0

另外,在我的config.xml

<preference name="android-minSdkVersion" value="16" />
<preference name="android-targetSdkVersion" value="23" />

Ionic使用cordova add platform android@5.2.2

构建平台

我做了什么

  1. 降级API版本,只是出现错误
  2. 使用ionic platform android@6.0.0升级API版本并创建平台。它确实编译了,但是遇到了新的错误(例如deviceready not beign fired并且图标和启动没有加载beign)。
  3. 以不同版本重新安装ionic和cordova。什么都没有改变。
  4. 此时我真的不知道发生了什么,因为所有其他关于这个错误的帖子都可以通过获取正确的Android版本来解决。顺便说一下,我可以毫无错误地构建和运行iOs应用程序。

    插件列表

    com.shoety.cordova.plugin.inappbrowserxwalk 0.3.3 "InAppBrowser Crosswalk"
    cordova-plugin-actionsheet 2.3.3 "ActionSheet"
    cordova-plugin-app-version 0.1.9 "AppVersion"
    cordova-plugin-compat 1.1.0 "Compat"
    cordova-plugin-console 1.0.6 "Console"
    cordova-plugin-crosswalk-webview 2.1.0 "Crosswalk WebView Engine"
    cordova-plugin-device 1.1.5 "Device"
    cordova-plugin-file 4.3.2 "File"
    cordova-plugin-geolocation 2.4.2 "Geolocation"
    cordova-plugin-inappbrowser 1.6.0-dev "InAppBrowser"
    cordova-plugin-media 2.4.1 "Media"
    cordova-plugin-network-information 1.3.2 "Network Information"
    cordova-plugin-splashscreen 4.0.2 "Splashscreen"
    cordova-plugin-statusbar 2.2.2 "StatusBar"
    cordova-plugin-whitelist 1.3.2 "Whitelist"
    cordova-sqlite-storage 1.5.3 "Cordova sqlite storage plugin"
    cordova.plugins.diagnostic 3.3.3 "Diagnostic"
    ionic-plugin-keyboard 2.2.1 "Keyboard"
    phonegap-plugin-barcodescanner 6.0.5 "BarcodeScanner"
    uk.co.workingedge.phonegap.plugin.launchnavigator 3.2.1 "Launch Navigator"
    

    编辑:问题是Diagnostic的版本。如果我将它降级到3.0.0,那么构建适用于Android,但是对于iOs来说是失败的,因为源代码是使用该版本制作的。我不知道为什么它对我不起作用。

2 个答案:

答案 0 :(得分:0)

构建问题是由于Cordova诊断插件的兼容性问题。

根据我的分析,我在插件页面的官方问题跟踪部分遇到了这个issue。解决构建问题有两种可能的解决方案,如下所示:

  1. 按用户建议将诊断插件降级到3.0.0版
  2. 根据插件作者的建议,将Cordova Android版本升级到该插件的最新兼容版本。
  3. 希望它有所帮助。欢呼声。

答案 1 :(得分:0)

截至2017年6月16日,这对我有用

在用于诊断的plugin.xml中

更改以下两行:

<framework src="com.android.support:support-v4:25.+" />
<framework src="com.android.support:appcompat-v7:25.+" />

<framework src="com.android.support:support-v13:23+"/>
<framework src="com.android.support:appcompat-v7:23+" />