.NET7 Android应用迁移Maui Essentials遇清单构建错误
.NET7 Android 升级 Maui Essentials 构建错误解决方案
一、解决 FileProvider 资源缺失问题
- 检查项目根目录下是否存在
Resources/xml文件夹,没有则手动创建。 - 在该文件夹中添加以下两个 XML 文件:
- microsoft_maui_essentials_fileprovider_file_paths.xml
<?xml version="1.0" encoding="utf-8"?> <paths xmlns:android="http://schemas.android.com/apk/res/android"> <files-path name="my_files" path="." /> <external-files-path name="my_external_files" path="." /> <external-path name="my_external" path="." /> </paths>- xamarin_essentials_fileprovider_file_paths.xml
直接复制上面的内容即可,用于兼容过渡阶段的资源引用。
- 若出现
xml/library_file_paths错误,同样在Resources/xml下创建同名文件,内容可参考上述路径配置按需调整。
二、解决 integer/google_player_services_version 错误
- 打开项目的
Resources/values文件夹,创建或修改google-services.xml文件,添加以下内容:
<?xml version="1.0" encoding="utf-8"?> <resources> <integer name="google_player_services_version">12451000</integer> </resources>
三、清理项目配置与冗余引用
- 打开
.csproj文件,移除所有Xamarin.Essentials相关的PackageReference节点,Maui Essentials 已完全替代 Xamarin Essentials,无需重复引用。 - 确认
<UseMaui>True</UseMaui>和<UseMauiEssentials>True</UseMauiEssentials>配置已正确添加,且项目目标框架为net7.0-android。 - 删除项目根目录下的
bin和obj文件夹,执行清理后重新构建项目。
四、检查 AndroidManifest.xml 配置
- 打开
AndroidManifest.xml,移除重复注册的 Xamarin Essentials FileProvider 节点,仅保留 Maui Essentials 的相关配置。 - 确保 FileProvider 的
android:authorities属性与你的应用包名匹配(格式通常为你的包名.fileprovider),且引用的 XML 资源路径正确。
内容的提问来源于stack exchange,提问作者rusty8521
相关产品推荐
相关产品推荐

