【发布时间】:2016-12-12 13:08:05
【问题描述】:
我正在尝试编译我的Xamarin Form 解决方案的Android 项目,但它失败并出现以下异常:
正在使用过时的“Android SDK 构建工具”,此版本的 Android 支持库不支持。您必须从“Android SDK 管理器”的“工具”部分卸载任何早于 23.0.0 的“Android SDK 构建工具”版本 您还需要安装“Android SDK Build-tools”版本 23.0.0 或更高版本。发票.Android
这发生在我更新了一些使用 Telerik 和 SyncFusion 的组件之后。
我在here 尝试了所有建议的解决方案,包括清洁解决方案和更新build tools,但都没有任何效果。
我正在使用Android SDK Manager 24.4.1 和build-tools 23.0.3,这显然是最新版本。
我附上了所有已安装组件的图片,如果您需要更多信息,请告诉我。
这是我的packages.config:
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Xamarin.Android.Support.Animated.Vector.Drawable" version="23.3.0" targetFramework="monoandroid44" />
<package id="Xamarin.Android.Support.Design" version="23.3.0" targetFramework="monoandroid44" />
<package id="Xamarin.Android.Support.v4" version="23.3.0" targetFramework="monoandroid44" />
<package id="Xamarin.Android.Support.v7.AppCompat" version="23.3.0" targetFramework="monoandroid44" />
<package id="Xamarin.Android.Support.v7.CardView" version="23.3.0" targetFramework="monoandroid44" />
<package id="Xamarin.Android.Support.v7.MediaRouter" version="23.3.0" targetFramework="monoandroid44" />
<package id="Xamarin.Android.Support.v7.RecyclerView" version="23.3.0" targetFramework="monoandroid44" />
<package id="Xamarin.Android.Support.Vector.Drawable" version="23.3.0" targetFramework="monoandroid44" />
<package id="Xamarin.Forms" version="2.3.0.49" targetFramework="monoandroid44" />
</packages>
这是完整的build output:
正在恢复 NuGet 包... 要防止 NuGet 在构建期间恢复包,请打开 Visual Studio 选项对话框,单击包管理器节点并取消选中“允许 NuGet 在构建期间下载丢失的包”。 1>----- 重建所有开始:项目:发票,配置:调试任何 CPU ------ 1>C:\Users{user}\AppData\Local\Syncfusion\EssentialStudio\14.2.0.26\Xamarin\sample\Forms\Invoice\Invoice\Views\InfoView.xaml.cs(28,17,28,38):警告CS0618:“Label.Font”已过时:“请使用类本身的字体属性。在 v1.3.0' 中已废弃 1>C:\Users{user}\AppData\Local\Syncfusion\EssentialStudio\14.2.0.26\Xamarin\sample\Forms\Invoice\Invoice\Views\ItemView.xaml.cs(57,13,57,34):警告CS0618:“Label.Font”已过时:“请使用类本身的字体属性。在 v1.3.0' 中已废弃 1>C:\Users{user}\AppData\Local\Syncfusion\EssentialStudio\14.2.0.26\Xamarin\sample\Forms\Invoice\Invoice\Views\ItemView.xaml.cs(68,21,68,41):警告CS0618:“Label.Font”已过时:“请使用类本身的字体属性。在 v1.3.0' 中已废弃 1>C:\Users{user}\AppData\Local\Syncfusion\EssentialStudio\14.2.0.26\Xamarin\sample\Forms\Invoice\Invoice\Views\ItemView.xaml.cs(68,44,68,68):警告CS0618:“Label.Font”已过时:“请使用类本身的字体属性。在 v1.3.0' 中已废弃 1>C:\Users{user}\AppData\Local\Syncfusion\EssentialStudio\14.2.0.26\Xamarin\sample\Forms\Invoice\Invoice\Views\ItemView.xaml.cs(68,71,68,98):警告CS0618:“Label.Font”已过时:“请使用类本身的字体属性。在 v1.3.0' 中已废弃 1>C:\Users{user}\AppData\Local\Syncfusion\EssentialStudio\14.2.0.26\Xamarin\sample\Forms\Invoice\Invoice\Views\ItemView.xaml.cs(69,25,69,56):警告CS0618:“Label.Font”已过时:“请使用类本身的字体属性。在 v1.3.0' 中已废弃 1>C:\Users{user}\AppData\Local\Syncfusion\EssentialStudio\14.2.0.26\Xamarin\sample\Forms\Invoice\Invoice\Views\ItemView.xaml.cs(121,17,121,31):警告 CS0618: 'Label.Font' 已过时:'请使用类本身的字体属性。在 v1.3.0' 中已废弃 1>C:\Users{user}\AppData\Local\Syncfusion\EssentialStudio\14.2.0.26\Xamarin\sample\Forms\Invoice\Invoice\Views\ItemView.xaml.cs(127,17,127,33):警告 CS0618: 'Label.Font' 已过时:'请使用类本身的字体属性。在 v1.3.0' 中已废弃 1>C:\Users{user}\AppData\Local\Syncfusion\EssentialStudio\14.2.0.26\Xamarin\sample\Forms\Invoice\Invoice\Views\ItemView.xaml.cs(131,17,131,35):警告 CS0618: 'Label.Font' 已过时:'请使用类本身的字体属性。在 v1.3.0' 中已废弃 1> 发票 -> C:\Users{user}\AppData\Local\Syncfusion\EssentialStudio\14.2.0.26\Xamarin\sample\Forms\Invoice\Invoice\bin\Debug\XamarinIOInvoice.dll 2>------重建所有开始:项目:Invoice.Android,配置:调试任何CPU ------ 2>C:\Users{user}\AppData\Local\Syncfusion\EssentialStudio\14.2.0.26\Xamarin\sample\Forms\Invoice\Invoice.Android\Properties\AndroidManifest.xml:警告 XA0101:@(Content) 构建操作是不支持 2>C:\Users{}\AppData\Local\Syncfusion\EssentialStudio\14.2.0.26\Xamarin\sample\Forms\Invoice\packages\Xamarin.Android.Support.Vector.Drawable.23.3.0\build\Xamarin.Android .Support.Vector.Drawable.targets(40,5):错误:正在使用过时的“Android SDK Build-tools”,此版本的 Android 支持库不支持。您必须从“Android SDK 管理器”的“工具”部分卸载任何早于 23.0.0 的“Android SDK 构建工具”版本 2>C:\Users{user}\AppData\Local\Syncfusion\EssentialStudio\14.2.0.26\Xamarin\sample\Forms\Invoice\packages\Xamarin.Android.Support.Vector.Drawable.23.3.0\build\Xamarin。 Android.Support.Vector.Drawable.targets(40,5): 错误:您还需要安装“Android SDK Build-tools”版本 23.0.0 或更高版本。 ==========全部重建:1成功,1失败,0跳过==========
更新
我刚刚更新到build-tools 24.0.1,但错误并没有消失!
这个问题只存在于Xamarin Form,我可以编译Android项目就好了。
【问题讨论】:
-
最新 Android SDK
Build-tools = 24.0.1,Tools = 25.1.7(25.2.1) -
谢谢@SushiHangover,不过我不确定升级是否能解决我的问题。例外是大约 23,使用的版本仍然高于此。
-
你能添加详细构建输出吗? forums.xamarin.com/discussion/27515/… (XS) 和 blogs.msdn.com/b/msbuild/archive/2005/09/29/475157.aspx (VS) 请同时包含您尝试使用的 Android 支持库版本。 (也就是你的
packages.config内容应该有帮助) -
进入SDK文件夹位置,手动删除旧版本
-
我也做过!现在我只有一个
build-tools目录。和SDK Platform有关系吗?
标签: android xamarin visual-studio-2015 xamarin.forms android-build