Xamarin跨平台(便携式类)项目编译错误

时间:2016-04-24 07:44:45

标签: visual-studio xamarin xamarin.forms

我在visual studio中使用可移植类库创建了一个新的空白跨平台项目,但是当我尝试构建一个平台项目时,我有一个错误列表:

Error   CS0117  'Resource' does not contain a definition for 'Animation'
Error   CS0117  'Resource' does not contain a definition for 'Boolean'
Error   CS0117  'Resource' does not contain a definition for 'Color'
Error   CS0117  'Resource' does not contain a definition for 'Dimension'
Error   CS0117  'Resource' does not contain a definition for 'Id'   App5.Droid
Error   CS0117  'Resource' does not contain a definition for 'Integer'
Error   CS0117  'Resource' does not contain a definition for 'Layout'
Error   CS0117  'Resource' does not contain a definition for 'Style'
Error   CS0117  'Resource' does not contain a definition for 'Styleable'
Error   CS0117  'Resource.Attribute' does not contain a definition for 'actionBarDivider'
Error   CS0117  'Resource.Attribute' does not contain a definition for 'actionBarItemBackground'
Error   CS0117  'Resource.Attribute' does not contain a definition for 'actionBarPopupTheme'
Error   CS0117  'Resource.Attribute' does not contain a definition for 'actionBarSize'
Error   CS0117  'Resource.Attribute' does not contain a definition for 'actionBarSplitStyle'

请记住,我正在尝试更新NuGet包,但是当我选择所有包(Xamarin.forms)时,更新不起作用并出现以下错误:

Unable to find a version of 'Xamarin.Android.Support.v4' that is compatible with 'Xamarin.Android.Support.Animated.Vector.Drawable 23.2.1 constraint: Xamarin.Android.Support.v4 (= 23.2.1)', 'Xamarin.Android.Support.Design 23.0.1.3 constraint: Xamarin.Android.Support.v4 (>= 23.0.1.3)', 'Xamarin.Android.Support.v13 23.3.0 constraint: Xamarin.Android.Support.v4 (= 23.3.0)', 'Xamarin.Android.Support.v7.AppCompat 23.0.1.3 constraint: Xamarin.Android.Support.v4 (>= 23.0.1.3)', 'Xamarin.Android.Support.v7.MediaRouter 23.0.1.3 constraint: Xamarin.Android.Support.v4 (>= 23.0.1.3)', 'Xamarin.Android.Support.v7.RecyclerView 23.0.1.3 constraint: Xamarin.Android.Support.v4 (>= 23.0.1.3)', 'Xamarin.Android.Support.Vector.Drawable 23.2.1 constraint: Xamarin.Android.Support.v4 (= 23.2.1)', 'Xamarin.Forms 2.1.0.6529 constraint: Xamarin.Android.Support.v4 (= 23.0.1.3)'.

因此,我选择了除Xamarin.forms包之外的所有包并更新它们。

有关如何解决此错误的想法吗?

2 个答案:

答案 0 :(得分:2)

您需要使用错误消息中提到的软件包的特定/最小版本。最安全的方法是删除所有nuget包(包括Xamarin.Forms),然后添加Xamarin.Forms nuget包,它将添加所有依赖项与特定版本。

解释,James Montemagno

  

Xamarin.Forms锁定了一个非常特定的支持版本   图书馆和谷歌播放服务。你无法更新它们,因为   Xamarin.Forms并不像它需要的那样与它们兼容   重新编译。

     

Xamarin.Android.Support.v4(= 23.0.1.3)

     

Xamarin.Android.Support.Design(= 23.0.1.3)

     

Xamarin.Android.Support.v7.AppCompat(= 23.0.1.3)

     

Xamarin.Android.Support.v7.CardView(= 23.0.1.3)

     

Xamarin.Android.Support.v7.MediaRouter(= 23.0.1.3)

     

参见= 23.0.1.3,这意味着它只与之兼容   版本号。这就是NuGet的工作原理。当Xamarin.Forms   更新这些包将自动更新。

答案 1 :(得分:0)

我创建了一个新的Xamarin.forms项目(空白共享)与VS2015 Update 3 RC和类似的问题(以及更多,例如' Resource.Attribute'不包含' actionBarSize&的定义#39 ;.
问题是JDK的子版本(更新55而不是更新79 ) 您可以在此处找到我对Resource.Attribute错误的帖子:JDK7 problem