PhoneGap Build 6.1.0 不遵守 android-minSdkVersion

PhoneGap Build 6.1.0 not respecting android-minSdkVersion

几个月来我一直在使用 cli-5.2.0 在 PhoneGap Build 上构建应用程序,现在由于插件和 Android M 权限,我被迫转移到 cli-6.1.0 和 gradle构建。

突然间它不再考虑 android-minSdkVersion,我通常构建 2 个 APK,一个用于 sdk 15-19,另一个用于 21+,但现在它忽略了配置文件首选项并且构建了任何 APK SDK 15+

我认为它可能与 gradle 构建有关,但无法找到如何配置最小 sdk 版本以供 gradle 阅读,以及将 gradle 放在哪里配置文件,我只使用一个文本编辑器和 g运行t 到 运行 构建 phonegap 构建。

您可以使用 cordova 挂钩将自定义 gradle 文件复制到平台中。

我设置了一个预构建挂钩脚本来将我的 build-extra.gradle 复制到我的 android 平台中。

在我的 config.xml 我添加了

<platform name="android">
  <hook type="before_build" src="hooks/build-extras-gradle.sh"/>
</platform>

这是一个 bash 脚本:

#!/usr/bin/env bash

DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"

cd "$DIR/.."

echo '=== Copy Gradle build extras to android'
cp -Rf build-extras.gradle platforms/android

我的 build-extras.gradle 文件:

ext.cdvMinSdkVersion = 21
android.lintOptions.abortOnError = false
android.lintOptions.checkReleaseBuilds = false

我刚刚发现最新版本的 phonegap-plugin-barcodescanner 通过其 gradle 构建脚本强制执行 sdk 版本 15+。

回滚到 4.x 版本解决了这个问题(除了带来其他问题,例如相机在新手机上颠倒等)。