You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何永久修改.NET MAUI 7项目的Android最低SDK版本?

解决.NET MAUI 7中AMM0000错误(minSdkVersion自动重置)的永久方案

你手动修改AndroidManifest.xml后配置被覆盖,是因为.NET MAUI的构建逻辑会根据项目核心配置自动生成/覆盖该文件内容,直接改Manifest没用,得从项目配置入手:

方法一:通过项目属性UI修改(对应你提供的截图操作)

  • 右键你的MAUI项目 → 选择「属性」
  • 切换到「Android」选项卡,找到「Android版本」区域
  • 将「最低Android版本(API级别)」选择为API 21(Android 5.0)
  • 保存设置后重新构建,这个配置会被持久化,不会再被重置

方法二:直接编辑项目.csproj文件

  • 右键项目 → 选择「编辑项目文件」
  • 在<PropertyGroup>节点下添加或修改AndroidMinSdkVersion配置:
    <PropertyGroup>
      <!-- 保留原有其他配置,新增或修改这一行 -->
      <AndroidMinSdkVersion>21</AndroidMinSdkVersion>
    </PropertyGroup>
    
  • 保存文件后重新构建即可

可选方案:强制使用原minSdk(有运行时风险)

如果不想提升最低SDK版本到21,可尝试官方提到的tools:overrideLibrary方案,但需自行承担运行时故障风险:

  1. 打开Platforms\Android\AndroidManifest.xml,在根manifest节点添加tools命名空间:
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
              xmlns:tools="http://schemas.android.com/tools"
              package="你的应用包名">
    
  2. 修改uses-sdk节点:
    <uses-sdk android:minSdkVersion="19" tools:overrideLibrary="androidx.security" />
    
  3. 为了避免构建时被覆盖,需在.csproj里添加以下配置,确保Manifest的自定义设置生效:
    <PropertyGroup>
      <AndroidManifestMerger>manifestmerger.jar</AndroidManifestMerger>
    </PropertyGroup>
    <ItemGroup>
      <AndroidManifestOverlay Include="Platforms\Android\AndroidManifest.xml" />
    </ItemGroup>
    

内容的提问来源于stack exchange,提问作者Thomas Carlton

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 00:01:09