构build失败:Xamarin.Forms中的Android项目出错

我只是创build一个小的Xamarin.Forms示例应用程序。 当我build立我的Android项目,我得到一些错误。 我只是search错误,find一些解决scheme。 但没有什么工作正常。 最后一天,我重新安装了Visual Studio 2015和Xamarin Studio。 所以可能xamarin将被更新。

这里我只列出我的错误和build议的解决scheme。


错误1:

解压缩失败。 请下载https://dl-ssl.google.com/android/repository/android_m2repository_r10.zip并解压缩到…〜\ Local \ Xamarin \ Android.Support.v4 \ 21.0.3 \ content目录。

build议的解决scheme: 文件被成功下载,并根据错误信息进行更换。


错误2: _请安装软件包:SDK安装程序中提供的“Android支持库”。 Java库文件…〜\ Local \ Xamarin \ Android.Support.v4 \ 21.0.3 \ embedded \ classes.jar不存在。 请安装软件包:SDK安装程序中提供的“Android支持库”。 Java库文件…〜\ Local \ Xamarin \ Android.Support.v4 \ 21.0.3 \ embedded \ libs / internal_impl-21.0.3.jar不存在._

build议的解决scheme: Android支持库被删除并重新安装。


错误3: 原因:…〜\ \ Local \ Xamarin \ zips \ 1FD832DCC1792D8ACA07FAC3259FC5A9.zip不是有效的zip文件。

build议的解决scheme: 我没有find任何解决这个错误。


这些解决scheme仍然是无用的。 而不是在我的情况下工作。


我在用着 :

  • Xamarin 4.0.0.1689(f860fe4)
  • Xamarin.Android 6.0.0.34(3efa14c)
  • Xamarin.iOS 9.2.1.51(3c0ec35)

这里是详细的报告:

=== Xamarin工作室===

版本5.10(内部版本871)安装UUID:c5309e12-1ab1-494c-9296-033a0a5c3f24运行时:Microsoft .NET 4.0.30319.42000 GTK + 2.24.23(MS-Windows主题)GTK#2.12.30

=== Xamarin.Android ===

版本:6.0.0 Android SDK:D:\ Android \ android-sdk支持的Android版本:2.3(API等级10)4.0.3(API等级15)4.1(API等级16)4.2(API等级17)4.3 18)4.4(API等级19)4.4.87(API等级20)5.0(API等级21)5.1(API等级22)6.0(API等级23)

SDK工具版本:24.4

SDK平台工具版本:23.0.1

SDK构build工具版本:23.0.1

Java SDK:C:\ Program Files(x86)\ Java \ jdk1.7.0_55 Java版本“1.7.0_55”Java™SE运行时环境(build 1.7.0_55-b13)Java HotSpot™客户端虚拟机(版本24.55 -b03,混合模式,共享)

=== Xamarin Android播放器===

版本:0.6.5位置:C:\ Program Files \ Xamarin Android Player \ DeviceManager.exe

===构build信息===

发行编号:510000871 Git修订版:4e9c5abb5ffdae12ba02ac49da83f8b2011dbb88开发date:2015-11-12 07:16:34-05 Xamarin插件:55007ed0e56436f385d8e26394a45be563abc7e8 Build lane:monodevelop-windows-cycle6

===操作系统===

Windows 6.3.9600.0(64位)

任何想法或build议来摆脱这个错误?

Solutions Collecting From Web of "构build失败:Xamarin.Forms中的Android项目出错"

编辑:这些信息现在包含在我们的文档中: https : //developer.xamarin.com/guides/android/troubleshooting/resolving-library-installation-errors/

Xamarin.Android支持库NuGet m2repository修复

1.调查

在引用Android支持库/ Google Play服务的NuGet包时,您可能会遇到下载m2repository问题。

示例错误:

Download failed. Please download https://dl-ssl.google.com/android/repository/android_m2repository_r25.zip and put it to the C:\Users\[Username]\AppData\Local\Xamarin\{SUPPORT LIBRARY NAME}\{VERSION NUMBER} directory."

Mac目录:/ /Users/[Username]/.local/share/Xamarin/

Windows目录: C:\Users\[Username]\AppData\Local\Xamarin\

2.文件夹内容

这个例子将使用Windowspath。 这可以应用于任一操作系统。

  • 给定以下内容: C:\Users\[Username]\AppData\Local\Xamarin\

  • 将显示每个Android支持库/ Google Play服务的文件夹。

  • 每个图书馆应该有一个版本的集合:

注意:在这个例子中,我展示了Android.Support.v4所有版本

  • 然后,我们将调查我们感兴趣的相应版本。我们应该看到里面的两个文件夹, contentembedded

  1. content – 包含m2repository
  2. embedded – 包含相应的.aar内容

3.自动修复

  • 删除给您错误的版本化的库文件夹:

Mac目录: /Users/[Username]/.local/share/Xamarin/{SUPPORT LIBRARY NAME}/{VERSION NUMBER}

Windows目录: C:\Users\[Username]\AppData\Local\Xamarin\{SUPPORT LIBRARY NAME}\{VERSION NUMBER}

  • 重build你的项目(这将启动一个生成任务重新下载库)。

4.手动修复

有两个步骤来手动修复此错误。

  1. m2repository文件夹添加到/content文件夹。
  2. 将相应的Android支持库/ Google Play Services .aar内容添加到/embedded文件夹。

1.将m2repository添加到/ content文件夹

从谷歌下载相应的m2repository

https://dl-ssl.google.com/android/repository/android_m2repository_r25.zip

注意:此版本号将根据您的错误消息而有所不同。

  • 将该.zip解压缩到任何目录。 现在应该有一个android_m2repository_r25文件夹。
  • android_m2repository_r25文件夹中,我们有一个m2repository文件夹。
  • m2repository放入{VERSION NUMBER}/content文件夹

2.将.aar内容添加到/ embedded文件夹

  • m2repository文件夹中,有一个.aar用于解决支持库。 它可以在com\android\support目录中find:

例:

m2repository\com\android\support

  • 应该有一个包含.aar文件的support-v4\{VERSION NUMBER}
  • 提取.aar并将内容放入embedded文件夹中。

例:

  • m2repository\com\android\support\support-v4\23.1.1\support-v4-23.1.1将包含诸如aaptaidlassetslibsresAndroidManifest.xmlannotations.zipclasses.jar
  • 将所有内容放入{VERSION NUMBER}/embedded文件夹中。

5.新的手动修复

  • 获取缺less的m2repository下载的URL
  • 在下载url上使用MD5散列
  • 将文件重命名为{MD5HASH} .zip(其中MD5HASH是散列下载URL)
  • 将新的散列.zip文件放在Xamarin \ zips目录中

删除\ Local \ Xamarin \ zip中的压缩文件\ 1FD832DCC1792D8ACA07FAC3259FC5A9.zip

清理并重build您的解决scheme。

删除所有的zip文件。 即使它要求你下载和replace,它会再次损坏。 更快的方法是删除所有的zip文件并重build,它会自动根据需要下载和解压缩。

Android m2repository经常在我的机器上损坏。

与Android我也build议,build立对API 23(6.0),并设置你的最低水平为15(除非你真的需要API 10)。 确保不要使用“最新的SDK”选项,这也是过去已知的问题,请select其中最高的API。

当试图使用xamarin表单2.0时,我遇到了这个问题

这个问题通常出现在IDE(例如VS2015)尝试解压该zip … VS挂起,并且您必须强制closures它…当您重新打开IDE时,无法使用此版本的xamarin编译任何东西。

首先你应该下载r23 no r10。 每个包含每个版本api的程序集。

当你拥有它时,你应该删除C:\ Users \%username%\ AppData \ Local \ Xamarin中的库文件夹,例如Android.Support.v4

使用库名C:\ Users \%username%\ AppData \ Local \ Xamarin {LibraryName} \ 23.0.1创build一个path

复制下载r23到C:\ Users \%username%\ AppData \ Local \ Xamarin \ Android.Support.v4 \ 22.2.10 \ content

进入m2repository \ com \ android \ support并在libraryname \ version下,你会得到一个扩展名为“.aar”的文件,这个文件重命名为.rar,解压到C:\ Users \%username%\ AppData \ Local \ Xamarin {库名称} \ 23.0.1 \embedded

顺便下载r23.zip的副本必须离开:

C:\ Users \%username%\ AppData \ Local \ Xamarin {库名} \ 23.0.1 \

当你这样做了,你可以再次编译

花了整整一个晚上努力得到这个工作,原来我强制closuresVS在初步build设思考它卡住不知道实际上是下载一个> 200MB的文件到我的C:\用户[用户名] \应用程序数据\本地\ Xamarin \ zips文件夹。

删除损坏的zip文件,并耐心重新运行重build肯定解决了这个问题。