gpt4 book ai didi

c# - 尝试存档 Xamarin 应用程序以进行发布时找不到程序集 Mono.Android

转载 作者:行者123 更新时间:2023-12-05 05:36:01 29 4
gpt4 key购买 nike

我必须在 Xamarin 项目上做一些工作,这不是我创建的,但目前正在生产中。我可以在 Android 和 iPhone 上的 Debug 和 Release 中构建应用程序,就像其他任何克隆 repo 的人一样。但是,我的团队中没有人能够成功存档该应用程序以供发布。每个人都会遇到相同的错误: 无法解析此引用。找不到程序集“Mono.Android”。检查以确保程序集存在于磁盘上。如果您的代码需要此引用,您可能会遇到编译错误。

问题 1:Mono.Android 究竟应该存在于磁盘的什么位置?

无法找到程序集“Mono.Android”。检查以确保程序集存在于磁盘上

在引用文件夹 Mono.Android 的项目 .Droid 文件夹中确实存在,但显然这还不够。如果这不是唯一的地方,它还应该存在于何处?

在 Windows 上,人们说要查看 C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\ReferenceAssemblies\Microsoft\Framework\MonoAndroid{VERSION NUMBER}\Mono.Android.dll 这样的东西但我在 Mac 上,那么它可能在哪里呢?

问题 2:为什么我首先会收到此错误?

无论是什么问题,我都不明白为什么它会在尝试仅存档 .IOS 项目时触发。据我所知,这应该与 Mono.Android 没有任何关系。我觉得我应该只在尝试存档 .Droid 项目时收到此错误。

问题 3:有什么解决方案?

要求最低 Android 版本:6(API 级别 23)

目标 Android 版本:9.0(API 级别 28)

团队中的每个人都在使用 VS for Mac。

我已确认我已安装 Android 9 Pie 及其所有软件包。我曾尝试在 Visual Studio for Mac 2019 和 2022 上进行存档以进行发布,但每个结果都相同。我已经让团队中的其他人尝试过相同的方法。

我曾尝试重新引用 Mono.Android,但当我尝试添加引用并向下滚动到 Mono.Android 时,版本为 0.0.0.0。为什么会这样?

我缺少什么以及如何获得它?

如果您需要任何其他信息,请询问,我会尽力分享。

最佳答案

我终于成功部署了该应用程序。我在 Droid 项目的 csproj 文件中找到了 Mono.Android 的硬编码路径。我删除了它并且 Mono.Android 错误停止了,但我仍然收到类似的错误所以这就是发生的事情:

我相信该应用程序最初是在 VS for Mac 2017 中开发的,并且使用了任何 Xamarin 包版本随 VS for Mac 2017 开发该应用程序的任何版本。我使用的是 M1 Mac,无法安装 VS for Mac 2017或者我需要的很多包。所以我所做的是转移到 VS for Mac 2022 并升级所有 Xamarin 包,然后修复由此产生的错误。

所有包都升级后,应用程序仍然无法正确部署,所以我下载了 Transporter 并使用它来部署应用程序,这非常简单。

我希望这对以后的人有帮助。

关于c# - 尝试存档 Xamarin 应用程序以进行发布时找不到程序集 Mono.Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73377960/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com