与AWSSDK的Xamarin链接器错误

时间:2016-11-04 22:14:04

标签: amazon-web-services xamarin amazon-s3 xamarin.ios xamarin.android

我有一个Xamarin表单移动项目(Android和iOS)。

当我尝试安装AWSSDK.S3来访问Amazon服务时,在尝试构建iOS时出现以下链接器错误:

无法从“AWSSDK.Core”解析“System.Void Amazon.Runtime.Internal.Util.AESEncryptionPutObjectStream ::。ctor(System.IO.Stream,System.Byte [],System.Byte [])”引用, Version = 3.3.0.0,Culture = neutral,PublicKeyToken = 885c28607f98e604“

.. Android版本也有类似的错误。

我安装了以下库:

AWSSDK.S3 v3.1.1.1 AWSSDK.Core v3.3.4 AWSSDK.SecurityToken v3.3.0.2 AWSSDK.CognitolIdenity v3.3.0.2 AWSSDK.CognitoIdentityProvider v3.3.1.2 PCLCrypto v2.0.147 PCLStorage v1.0.2

我项目中唯一的代码是:

 var amazonClient = new AmazonS3Client();

有什么想法吗?

3 个答案:

答案 0 :(得分:0)

似乎可行的可能(坏)解决方法:

更改链接器选项/链接器行为:

to:不要链接

而不是:仅限链接SDK程序集

答案 1 :(得分:0)

答案结果可以在这里找到:

Xamarin Forms IOS Failed to load assembly System.Net.Http.Primitive

即使它有不同的程序集错误,修复也是一样的:

  • 将所有AWS.Core更新到最新版本:在我的情况下为v3.3.6
  • 安装Microsoft.Bcl.Build v1.0.21
  • 安装Microsoft.Net.Http v2.2.29

答案 2 :(得分:0)

回滚到AWSSDK.S3 V3.1.10为我工作,使用Visual Studio中的NuGet管理器完成。 =)