Cordova 构建 minSdkVersion 将 16 更改为 19

Posted

技术标签:

【中文标题】Cordova 构建 minSdkVersion 将 16 更改为 19【英文标题】:Cordova Build minSdkVersion change 16 to 19 【发布时间】:2019-02-19 01:55:13 【问题描述】:

我的项目中有 android 版本 7.1.1

添加 android 后,我使用“cordova Build”命令构建项目

我得到以下错误

See http://g.co/androidstudio/manifest-merger for more information about the manifest merger.

:app:processDebugManifest FAILED
uses-sdk:minSdkVersion 16 cannot be smaller than version 19 declared in library [:CordovaLib] C:\Users\trikonuser\TestAgain\WebCall_AS_tsim\webCall\platforms\android\CordovaLib\build\ intermediates\manifests\full\debug\AndroidManifest.xml as the library might be using APIs not available in 16

Suggestion: use a compatible library with a minSdk of at most 16,
        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)

现在魔法在我的文件中 www/config.xml 和 xml/config.xml

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

还有我放的 main/AndroidManifest.xml 文件

<uses-sdk android:minSdkVersion="19" android:targetSdkVersion="27" />

虽然我的 gradle 文件也包含

project.ext 

defaultBuildToolsVersion="27.0.1" //String
defaultMinSdkVersion=19 //Integer - Minimum requirement is Android 4.4
defaultTargetSdkVersion=27 //Integer - We ALWAYS target the latest by default
defaultCompileSdkVersion=27 //Integer - We ALWAYS compile with the latest by default

但是在运行命令cordova build 之后,它会将我自动创建的所有配置更改为之前的配置,如下所示

www/config.xml 和 xml/config.xml

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

还有我放的 main/AndroidManifest.xml 文件

<uses-sdk android:minSdkVersion="16" android:targetSdkVersion="27" />

如果他们已经想要 19,Cordova Build 命令如何再次运行 rechange 到 16

我用的是phonegap下面的版本

<preference name="phonegap-version" value="cli-6.3.0" />

【问题讨论】:

我不知道这对你是否有意义,但在this answer Ferhat 中提到它可能会删除 android 平台并再次添加它。老实说,我没有尝试也无法确认,但是移除和添加科尔多瓦总是让它更干净一些。请务必在执行此操作之前进行备份! 删除然后重新添加android平台,之后它应该可以工作 对于那些使用 cordova-plugin-browsertab 然后this may be your answer. 【参考方案1】:

删除android平台并添加:

cordova platform add android@7.0.0

这应该对您有所帮助。

【讨论】:

以上是关于Cordova 构建 minSdkVersion 将 16 更改为 19的主要内容,如果未能解决你的问题,请参考以下文章

Cordova 插件无法加载

phonegap + Onesignal 和 minSdkVersion 错误

需要PhoneGap项目的示例cordova-plugin-facebook4

如何更改项目的 minSdkVersion?

清单合并失败:uses-sdk:minSdkVersion 14

如何使用Ionic 3为Android API 21构建apk?它继续为API 23构建,即使我在config.xml中将目标sdk更改为21