我正在使用VS2013,Xamarin.Android 4.12.4.20。
构建成功。
每当我尝试在调试模式或包中部署时,我都会从标题中收到错误。 它开始发生在今天它之前工作正常。
我重新启动了VS,设备,PC - 没有人帮忙。
堆栈追踪:
Xamarin.AndroidTools.AndroidDeploymentException: InternalError ---> System.ArgumentException: An item with the same key has already been added.
at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
at Mono.AndroidTools.Adb.AdbSyncDirectory.Add(AdbSyncItem entry)
at Xamarin.AndroidTools.AndroidDeploySession.InstallAssemblies(String destinationPath, CancellationToken token)
at Xamarin.AndroidTools.AndroidDeploySession.FastDev()
at Xamarin.AndroidTools.AndroidDeploySession.Run(CancellationToken token)
at Xamarin.AndroidTools.AndroidDeploySession.RunLogged(CancellationToken token)
--- End of inner exception stack trace ---
at Xamarin.AndroidTools.AndroidDeploySession.RunLogged(CancellationToken token)
at Xamarin.AndroidTools.AndroidDeploySession.Start(CancellationToken token)
构建输出:
3>Build succeeded.
3>Waiting for device..
3>Detecting installed packages
3>Detecting installed packages...
3>
3>Removing previous version of application
3>Removing previous version of application...
3>
3>Installing application on device
3>Copying application to device...
3>
3>Getting installation path...
答案 0 :(得分:2)
我已经弄明白了。确保您没有引用相同dll的不同版本!!
让我描述一下我的设置,这将有助于解释为什么发生异常。
我有两个项目
两者都有对同一个库的nuget引用。在某些时候,android(仅在此项目中)nuget引用已更新,导致应用程序所需的相同库的两个版本(Domain项目仍引用旧的nuget)。
当我尝试打包解决方案时,我会收到警告:
Consider app.config remapping of assembly "{Library}" from Version "5.6.0.0" [] to Version "5.6.1.0" [{Path}] to solve conflict and get rid of warning.
一旦我更新了域名,一切都有效。