Xamarin Forms Android这种类型的collectionView不支持从不同于调度程序线程的线程对其sourceCollection进行更改

时间:2019-01-18 14:12:15

标签: android forms xamarin archive

这是我尝试存档应用程序进行部署时遇到的错误。

error on archive 在任何其他时间都不会显示此错误。该项目可以在模拟器和设备上构建并运行,而不会出现问题。该错误的上下文或方向为零,指出了在哪里可以修复它。它也是随机出现的,上一次我构建/归档(功能更改为零)时没有发生此错误。

此存档与上一个存档之间的主要区别是VS 2017的较新版本。记不清以前的版本了,但当前版本为15.9.4(稳定)。

环顾互联网,我发现此错误似乎与ObservableCollection有关,该错误可能在我的应用中有10位数。我不太确定该怎么做,因为这以前从来都不是问题,而且由于应用程序的结构,我正处于最后期限,因此无法开始进行功能更改。

EDIT

我还清理并重建了解决方案,并删除了xamarin项目中的所有bin / obj文件夹。甚至尝试删除.vs文件夹,有时可能会有所帮助。但还是不行。

将尝试将VS更新到15.9.5,看看它是否已在发行版中修复。

编辑2

将VS 2017更新到15.9.5没什么区别。

编辑3

我让我的同事尝试在他的计算机上存档完全相同的项目(运行VS 2017:5.9.3,并且对他来说存档很好。到目前为止,这是我们能够在环境之间找到的唯一区别。 / p>

5 个答案:

答案 0 :(得分:4)

我在使用VS2017 15.9.9时遇到了相同的问题。甚至可以在一周前存档的相同代码也引发了上述错误。它似乎与解决方案中的本地数据有关。 “明确的”构建是不够的。但是手动删除本地obj和bin文件夹,然后进行归档(隐式完成构建)对我来说解决了这个问题。

答案 1 :(得分:1)

就我而言,关闭Visual Studio并删除.vs隐藏文件夹即可。

实际上,它是使用Xamarin解决许多问题的解决方案。

我遇到了另一个无法存档的问题,因为构建过程会挂起并且永远不会结束。删除.vs文件夹也可以。 https://github.com/xamarin/xamarin-android/issues/1760

答案 2 :(得分:1)

只需转到项目属性,然后转到Android选项->选择“高级”,然后将Java Max堆大小增加到2G / 3G->它对我有用。

答案 3 :(得分:0)

卢安的建议奏效了。我并不特别喜欢它,因为它花了很长时间,并且基本上可以将您恢复为基本安装(没有扩展或个性化设置)。花了大约1.2个小时才能完成,但是一旦完成,我就可以再次存档我的android应用程序了。我想vs可能出了点问题,也许是在更新期间。没有办法说。

答案 4 :(得分:0)

我尝试了以上所有想法,但其中任何一个都没有持续可靠的运气。
我发现Microsoft已将问题报告给他们(请参阅下面的链接)。在花费大量时间后,我在下面的链接中发布了一种能够解决此存档生成问题的方法。

像其他修复程序一样,这也不是完全合乎逻辑的,并且您认为不会起作用,但是我发现该过程是可重复的,这对于我来说是很黄金的,因为时间表紧迫,没有时间这样做。

MS Visual Studio Developer Community Problem 507708

张贴在星期六的早晨,这确实表明需要紧急解决这个问题。希望对您也有帮助。