首页 > 解决方案 > 科尔多瓦的 Android 构建问题

问题描述

我有一个我正在尝试使用 android 版本 8.1.0 构建的 cordova android 应用程序。

当我尝试构建时,我看到以下错误:

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:processDebugManifest'.
> Manifest merger failed : uses-sdk:minSdkVersion 14 cannot be smaller than version 19 declared in library [:CordovaLib] C:\Users\Thejwal\Desktop\IES.InMotion.Driver_10_22_2018_V0.5\IES.InMotion.Driver\platforms\android\CordovaLib\build\intermediates\library_manifest\debug\AndroidManifest.xml as the library might be using APIs not available in 14
        Suggestion: use a compatible library with a minSdk of at most 14,
                or increase this project's minSdk version to at least 19,
                or use tools:overrideLibrary="org.apache.cordova" to force usage (may lead to runtime failures)

在检查了许多描述相同问题的线程后,我可以看到问题似乎与 minsdkvalue 有关。

我可以在platforms/android/build.gradle 文件中看到以下内容:

allprojects {
    repositories {
        google()
        jcenter()
    }

    //This replaces project.properties w.r.t. build settings
    project.ext {
      defaultBuildToolsVersion="28.0.3" //String
      **defaultMinSdkVersion**=19 //Integer - Minimum requirement is Android 4.4
      defaultTargetSdkVersion=28 //Integer - We ALWAYS target the latest by default
      defaultCompileSdkVersion=28 //Integer - We ALWAYS compile with the latest by default
    }
}

app 文件夹中还有另一个 build.gradle。我在那里看不到任何 minsdkversion。

有人可以帮我理解错误消息的含义以及如何解决吗?

标签: androidcordovagradle

解决方案


您应该尝试使用 config.xml 覆盖您的清单

   <preference name="android-minSdkVersion" value="19" />
   <preference name="android-targetSdkVersion" value="28" />

推荐阅读