将Xamarin.Forms更新为2.5 ...与其他软件包冲突

时间:2017-12-25 20:07:19

标签: c# android xamarin xamarin.forms visual-studio-2017

我正在使用Xamarin Forms和visual studio 2017 ..新项目总是有Xamarin.Forms v 2.3.3.191。 该项目不起作用..它在MainPage上停止(InitializeComponent)..只是停止并且没有发生任何事情。 我认为问题是Xamarin.Forms版本,所以我安装了Xamarin.Forms的更新..版本2.5.0.121934(最后稳定) 然后,当我反对 Android 项目时,它给了我那个错误

  

严重级代码说明项目文件行抑制状态错误   加载程序集时出现异常:System.IO.FileNotFoundException:   无法加载程序集' Xamarin.Android.Support.Fragment,   Version = 1.0.0.0,Culture = neutral,PublicKeyToken ='。也许它没有   存在于Mono for Android个人资料中?文件名:   ' Xamarin.Android.Support.Fragment.dll'

这些是包

<package id="Xamarin.Android.Support.Animated.Vector.Drawable" version="23.3.0" targetFramework="monoandroid60" />
  <package id="Xamarin.Android.Support.Design" version="23.3.0" targetFramework="monoandroid60" />
  <package id="Xamarin.Android.Support.v4" version="23.3.0" targetFramework="monoandroid60" />
  <package id="Xamarin.Android.Support.v7.AppCompat" version="23.3.0" targetFramework="monoandroid60" />
  <package id="Xamarin.Android.Support.v7.CardView" version="23.3.0" targetFramework="monoandroid60" />
  <package id="Xamarin.Android.Support.v7.MediaRouter" version="23.3.0" targetFramework="monoandroid60" />
  <package id="Xamarin.Android.Support.v7.RecyclerView" version="23.3.0" targetFramework="monoandroid60" />
  <package id="Xamarin.Android.Support.Vector.Drawable" version="23.3.0" targetFramework="monoandroid60" />
  <package id="Xamarin.Forms" version="2.5.0.121934" targetFramework="monoandroid60" />

我尝试更新Xamarin.Android.Support.v7.AppCompat,但它给了我一个错误

  

严重级代码说明项目文件行抑制状态错误   无法解析依赖项。 &#39; Xamarin.Android.Support.v7.AppCompat   26.1.0.1&#39;与&#39; Xamarin.Forms 2.5.0.122203约束不兼容:Xamarin.Andr

现在我有两个案例:

  1. 将X.F更新到版本2.5 ....并抛出错误System.IO.FileNotFoundException:无法在重建android项目时加载程序集&#39; Xamarin.Android.Support.Fragment]
  2. 将X.F版本保持在2.4 ....这会让应用程序在某些方面崩溃
  3. 我正在使用Android 6 Marshmallow API 23

    请帮助我

1 个答案:

答案 0 :(得分:1)

我解决了同样的问题,将 Android Target Framework (不要与Android Target Version混淆)设置为Android 7.0,如Xamarin.Forms 2.5.0所述{ {3}}:

  

使用Xamarin.Forms 2.3.4,限制开发人员的限制   Android支持库23被取消,允许开发人员选择   新的Google Play服务和Android支持库依赖项。   这为开发人员开辟了更多的可能性和灵活性,但是   使用的项目解决依赖关系也非常复杂   不同的图书馆现在在Xamarin.Forms 2.5.0中,为了支持   Google Play服务42.1024.0或更高版本,Xamarin.Forms依赖于   Android支持库25.4.0.2或更高版本。

     

使用Xamarin.Forms 2.5.0时,请务必从基线开始   这些依赖项适合您的项目。这是   已经测试了Xamarin.Forms的依赖关系的组合。

     
      
  • Android Target Framework 7.0(monoAndroid70)
  •   
  • Android支持库25.4.0.2
  •   
  • Google Play服务42.1024.0
  •   

之后我删除了Xamarin.Forms包及其所有引用的Android支持包,并重新安装了Xamarin.Forms版本2.5。但是,这始终保持安装版本23.3中的Android支持库。通过从Xamarin.Forms软件包的上下文菜单中选择 Update ,安装了版本25.4.0.2中的正确Android支持库。