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

在.NET MAUI(VS 2022)中如何指定非34的Android目标版本?

解决MAUI + VS2022 Android目标版本不显示及编译错误问题

一、为什么下拉选项仅显示API 34?

  • 确认SDK安装完整性:打开VS的「工具」→「Android」→「Android SDK管理器」,切换到「SDK平台」标签,检查你需要的版本(比如31)是否已勾选安装SDK Platform和对应系统镜像,仅安装平台工具不会让版本出现在下拉列表中。
  • MAUI目标框架与Android API绑定:.NET版本和Android API存在对应关系,比如.NET 8默认对应Android 34。若要使用更低版本,需手动修改项目文件(.csproj)的<TargetFramework>节点,格式为netX.X-androidYY(YY为API级别)。例如要选API 31,就改成<TargetFramework>net8.0-android31</TargetFramework>,修改后重新加载项目,下拉列表就会显示对应版本。

二、修复手动修改AndroidManifest.xml后的编译错误

MAUI项目优先读取项目文件配置,手动修改Manifest会导致配置冲突,按以下方式修复:

  1. 解决XA1036错误:
    • 要么把AndroidManifest.xml里的minSdkVersion改成和项目文件中SupportedOSPlatformVersion一致的值(当前为21);
    • 要么在项目文件中添加/修改<SupportedOSPlatformVersion>26</SupportedOSPlatformVersion>,同时删除Manifest里的minSdkVersion配置。
  2. 解决XA4211警告:
    • 不要手动修改Manifest里的targetSdkVersion,直接在项目文件中添加<AndroidTargetSdkVersion>31</AndroidTargetSdkVersion>,并确保<TargetFramework>的Android版本不低于这个值(比如用net8.0-android31)。
  3. 重新开启「在构建期间将项目属性转换为程序集特性」选项:这个选项是MAUI同步项目配置到Manifest的关键,关闭会导致配置不一致。

正确修改Android版本的推荐步骤

  • 打开项目「属性」→「Android」→「应用程序」,若下拉无目标版本,先按上述方法修改项目文件的<TargetFramework>;
  • 在「最低Android版本」和「目标Android版本」下拉列表中选择对应版本,VS会自动同步到项目文件和Manifest,避免手动修改的冲突。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 04:57:08