Flutter错误: uses-sdk:minSdkVersion 16 cannot be smaller than version 21 declared

前言

今天要做蓝牙通信的功能,我使用了flutter_reactive_ble这个库,但是在运行的时候发现一下错误

Launching lib/main.dart on AQM AL10 in debug mode...

/Users/macbook/Desktop/test/flutter/my_app/android/app/src/debug/AndroidManifest.xml Error:

``uses-sdk:minSdkVersion ``16 cannot be smaller than version ``21 declared in library [:reactive_ble_mobile] /Users/macbook/Desktop/test/flutter/my_app/build/reactive_ble_mobile/intermediates/merged_manifest/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 ``21``,

``or use tools:overrideLibrary=``"com.signify.hue.flutterreactiveble" to force usage (may lead to runtime failures)

FAILURE: Build failed with an exception.

* What went wrong:

Execution failed ``for task ``':app:processDebugMainManifest'``.

> Manifest merger failed : uses-sdk:minSdkVersion ``16 cannot be smaller than version ``21 declared in library [:reactive_ble_mobile] /Users/macbook/Desktop/test/flutter/my_app/build/reactive_ble_mobile/intermediates/merged_manifest/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 ``21``,

``or use tools:overrideLibrary=``"com.signify.hue.flutterreactiveble" to force usage (may lead to runtime failures)

* Try:

> Run with --stacktrace option to get the stack trace.

> Run with --info or --debug option to get more log output.

> Run with --scan to get full insights.

* Get more help at https:``//help.gradle.org

BUILD FAILED in 4s

┌─ Flutter Fix ─────────────────────────────────────────────────────────────────────────────────┐

│ The plugin reactive_ble_mobile requires a higher Android SDK version. │

│ Fix ``this issue by adding the following to the file │

│ /Users/macbook/Desktop/test/flutter/my_app/android/app/build.gradle: │

│ android { │

│ defaultConfig { │

│ minSdkVersion ``21

│ } │

│ } │

│ │

│ Note that your app won't be available to users running Android SDKs below ``21``. │

│ Alternatively, ``try to find a version of ``this plugin that supports these lower versions of the │

│ Android SDK. │

│ For more information, see: │

│ https:``//docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration │

└───────────────────────────────────────────────────────────────────────────────────────────────┘

Exception: Gradle task assembleDebug failed with exit code ``1

Exited

问题原因

自己项目的minSdkVersion比三方SDK的的minSdkVersion低,即版本不一致导致的。

解决办法

方法一

前往项目------>android------>app------>build.gradle文件搜索defaultConfig,将minSdkVersion修改成固定值即可

方法二

进入flutter环境安装目录/packages/flutter_tools/gradle(这里的flutter是环境变量中配置的flutter路径),搜索minSdkVersion,将值改为需求的版本即可(我这里改成21)

相关推荐
火柴就是我10 小时前
学习一些常用的混合模式之BlendMode. SRC_ATOP
flutter
火柴就是我12 小时前
学习一些常用的混合模式之BlendMode.srcIn
flutter
恋猫de小郭12 小时前
罗技鼠标因为服务器证书过期无法使用?我是如何解决 SSL 证书问题
android·前端·flutter
程序员老刘13 小时前
ArkUI-X 6.0 跨平台框架能否取代 Flutter?
flutter·客户端·arkui
火柴就是我13 小时前
学习一些常用的混合模式之BlendMode.srcOut
flutter
yfmingo15 小时前
flutter 哪些任务是在微队列,哪些是在事件队列
flutter
kirk_wang17 小时前
Flutter环境搭建与项目创建详解
flutter·移动开发·跨平台
西西学代码18 小时前
Flutter---动画
flutter