前言
今天要做蓝牙通信的功能,我使用了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)