我正在尝试为一个使用蓝牙通信的应用程序启动一个颤振项目。我用的是颤振蓝。

不幸的是,当试图运行(在Android设备上)我创建的第一个示例时,我遇到了以下错误:

FAILURE: Build failed with an exception.

  * What went wrong:
  Execution failed for task ':app:processDebugManifest'.
  > Manifest merger failed : uses-sdk:minSdkVersion 16 cannot be smaller than version 19 declared in library [:flutter_blue] /home/maldus/Projects/flutter/polmac/build/flutter_blue/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="com.pauldemarco.flutterblue" to force usage (may lead to runtime failures)

如果我在Android Studio,我知道如何提升Android minSdkVersion,但在一个flutter项目(使用VSCode),我有点迷失。

是否有可能增加minSdkVersion与颤振,以及如何?


当前回答

这工作。使用新版本,现在可以直接从IDE更改它。 https://www.youtube.com/watch?v=ztjCMzBX18w

其他回答

按照以下步骤更改minSdkVersion问题。

第一次= > YouProject_name / android / app / build.gradle

Second=> defaultconfig{//你可以在build中找到它。gradle}

defaultConfig {
        // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
        applicationId "com.umair.product_details_using_crud"
        minSdkVersion 16 // here you can change minSdkVersison
        targetSdkVersion 28
        versionCode flutterVersionCode.toInteger()
        versionName flutterVersionName
    }

在android/app/build中试试这个。graddel minSdkVersion 30应该修复它,但要确保你的kotlin版本在kotlin_version = '1.6.10'。

当我最近遇到这个问题时,我是这样处理的:

在<项目> / android / app / build.gradle

找到android -> defaultConfig -> minSdkVersion并将其替换为

minSdkVersion Math . max(扑动。minSdkVersion, 21)

这里的21可以替换为你想要的最小版本。

如果flutter开始支持23或其他更高版本作为最低版本,并且您决定为项目升级flutter,那么它仍然可以工作。

增加minSdkVersion确实是可能的,但它花了我太多的时间来找到它,因为谷歌搜索主要产生的结果是关于绝对最小Sdk版本flutter应该能够支持的讨论,而不是如何在你自己的项目中增加它。

就像在Android Studio项目中,你必须编辑构建。gradle文件。在flutter项目中,可以在路径。/android/app/build.gradle中找到它。

当然,需要更改的参数是minSdkVersion 16,将其提高到您需要的值(在本例中为19)。

defaultConfig {
    // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
    applicationId "com.example.projectname"
    minSdkVersion 19 //*** This is the part that needs to be changed, previously was 16
    targetSdkVersion 28
    versionCode 1
    versionName "1.0"
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}

现在看起来很明显,但我花了很长时间才自己想明白。

你可以在Project_Name/android/app/build文件中修改minSdkVersion。Gradle, defaultconfig:

defaultConfig {
    // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
    applicationId "com.example.projectname"
    minSdkVersion 16 // <--- There
    targetSdkVersion 27
    versionCode 1
    versionName "1.0"
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}