【问题标题】:Emulator says device does not support the minimum SDK level but it should模拟器说设备不支持最低 SDK 级别,但应该
【发布时间】:2019-09-18 14:34:56
【问题描述】:

由于某种原因,今天我不再能够将我的 Xamarin.Forms 应用程序部署到任何 android 模拟器。模拟器以前可以工作。我在部署板中看到的错误是

"Mono.AndroidTools.SdkNotSupportedException: The device does not support the minimum SDK level specified in the manifest". 

似乎这个问题的答案通常是清单与模拟器的 SDK 版本不匹配,但是我已经检查并将它设置为至少 26 和目标 28。模拟器在版本27. 我也尝试将 min/target 都设置为 27,但结果相同。

我有一些关于可能发生的变化的理论。

  1. 我最近开始为 google play 准备应用程序,并添加了一个包名,这是我以前没有的。
  2. 我把版本号从1改成了2,版本名也是2。
  3. 更新 Visual Studio (Mac)

还有什么我应该检查的想法吗?

【问题讨论】:

  • 您好,之前的版本可以吗?刚更新了Visual Studio for mac,然后就不行了。是这个现象吗。
  • 我不能 100% 确定这是导致问题的更新还是其他原因。它可能与我为发布构建做准备的其他事情有关。我现在也尝试删除我所有的模拟器图像并制作一个新的,但结果相同。此外,我创建了一个新项目并且该项目能够部署,所以它一定是这个项目的本地东西搞砸了。我不确定还有什么要检查的。
  • 好的,所以我刚刚从 Release 更改为 Debug(我有一个名为 debug 2 的辅助构建模式并返回到原始调试)。我仍然不清楚这两种构建设置有什么不同,但它现在可以工作了。如果我能弄清楚发生了什么变化,我会发回以防万一它可以帮助其他人!
  • 太好了,如果知道原因,在这里分享:)

标签: xamarin.android android-emulator


【解决方案1】:

万一其他人遇到此问题,这是由我的 csproj 中的 Debug|Android 配置块中的空白引起的。它是使用以前的 VS Mac IDE 以这种方式创建的。

我的主 PropertyGroup 中还有另一个 AndroidManifest 元素,因此删除空白元素(或在此处添加 AndroidManifest.xml 的路径)会使初始错误消失。

更多详情,请参考this solution

【讨论】:

  • 点评来源: 嗨,虽然链接是分享知识的好方法,但如果它们将来被破坏,它们将不会真正回答问题。将回答问题的链接的基本内容添加到您的答案中。如果内容太复杂或太大而无法在此处放置,请描述所提出解决方案的总体思路。请记住始终保留对原始解决方案网站的链接引用。见:How do I write a good answer?
  • @sɐunıɔןɐqɐp “回答问题的链接的基本内容”不是已经包含在帖子中了吗?
  • 如果这个答案的作者可以添加一个代码修复示例,就像在提到的博客中一样,那就太好了。链接总是会被破坏,这只是时间问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-01-09
  • 1970-01-01
  • 1970-01-01
  • 2020-07-12
  • 2021-06-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多