Android支持库是每个Android应用程序中必不可少的一部分,你会发现它们无处不在。支持库为开发人员提供了将Android的最新和最强大功能添加到应用程序的能力,同时保持与旧版本Android的向后兼容性。随着Android SDK的新版本不断推出,对支持库的更新也随之展开;保持最新版本并安装正确的版本是Android开发的一个重要(有时令人沮丧)的一部分。在这个博客,我希望他们揭秘支持库,帮助您升级到最新版本

版本控制

首先要明白的是如何支持库版本。我们在几个星期前与Jon Dick在Xamarin博客 讨论这个话题,但是这里有一个快速的崩溃:每一个支持库NuGet有语义的版本号(大,小,补丁)与他们同行的java版本,因此,您可以通过查看修订历史修订历史来查看每个版本中的内容。 有时你会在结尾看到一个额外的第四个补丁来标记着在NuGet上修改了这个Bug。 就像这个博客,Xamarin开发者能够访问的NuGet最新版本是25.3.1。最重要的数字是主要版本号25。这个数字意味着这是对Android SDK API级别25建成意味着安装NuGet和正确使用它,你必须选择API 25或者更高版本来重新在Visual Studio中编译, 否则,您可能会看到这个错误:

Could not install package ‘Xamarin.Android.Support.Compat 25.3.1’. You are trying to install this package into a project that targets ‘MonoAndroid,Version=v7.0’, but the package does not contain any assembly references or content files that are compatible with that framework.

更新支持库

现在我们安装了全部版本的支持库,我们能够将我们的自问库更新到最新版本。在这一点上,您可能想知道为什么需要更新库。随着时间的推移,支持库增加了新特性,但也提供应用程序需要的几个bug修复。此外,你可能依赖于其他支持库如谷歌播放服务或Xamarin插件,可能是针对最新的支持包创建的。 事实上,认识到现在是更新的时候了,我最近更新了我所有的插件到目标.NET标准和最新的支持库中。我所有的插件到目标.NET标准和最新的支持库中.

步骤1:安装Android SDK 25

能够像上面显示的那样使用API 25重新编译,你需要安装API 25 Android SDK。在Android SDK管理器,通过菜单 Tools->Android->Android SDK Manager… ,我找到SDK Manager并更新到API 25。要做的第一件事情是确认你“取消所有选择”并且在Andorid 7.1.1下找到SDK Platform 25。你需要安装一个包。(如果你使用的是Visual Studio for Mac,请阅读我们提供的最新的SDK管理器)。

安装后,我们需要选择这个SDK重新编译:

此外,最好的做法是将目标设置为与编译版本相同的版本。

在这一点上,强烈建议关闭并重新打开解决方案。这将确保你所有的设置同步准备NuGet踢到行动。升级时,您会看到一个错误,如果您没有正确设置编译目标,并且没有发挥作用,那么您不会针对Android的正确版本。

步骤2:更新NuGets

现在是时候更新的支持NuGets。更新您安装的所有支持库非常重要。如果不这样做,将导致不匹配的版本和编译错误。右键单击Android项目并且选择“Manage NuGet Packages…” ,在更新选项卡中,您将看到一个支持库的目标列表。只需选择所有包并点击“Update”。

这将确保所有NuGets和依赖关系得到更新。可能会提示您关闭并重新启动VisualStudio;确保您这样做,从而使项目得到完全更新。

如果你使用Visual Studio的Mac,你会看到在你项目的包结NuGets更新。您可以一次更新一个或右键单击包节点并更新所有。

更新后,我总是想重新检查所有的包已经通过关闭解决方案更新,并再次打开它,重复步骤2。完成此操作后,请确保完成了完整的清理工作,然后完成了项目的重新编译工作。

你有它,你的支持库是最新的和准备工作吧!

视频演练

想在行动中看到它吗?请观看下面的视频并亲手动手练习:

https://sec.ch9.ms/ch9/97d8/d2604d3d-94ae-42d5-8ca2-be0793e997d8/SnacKPackUpgradeAndroidSupportLibraries_high.mp4

【Xamarin.Android】掌握android支持库相关推荐

  1. Android不使用支持库请求运行时权限

    Android 6.0后,用户开始在应用运行时向其授予权限,而不是在应用安装时授予.Android官网上也有相关教程:在运行时请求权限.但教程是使用支持库来举例的,用支持库的话,APK的大小也会变得很 ...

  2. android support Percent支持库开发

    Android的布局支持百分比的设置进行开发,来学习如何去实现它,不过看起来会像网页的设置,比如宽度的设置属性是`layout_widthPercent`.在此之前,我们一般都会设置Linearlay ...

  3. ffmpeg自学路(一)用ubantu编译支持android的ffmpeg支持库,感谢韩曙亮

    非常感谢韩曙亮的帮助,特以此篇记录编译过程. 韩兄相关文章的对应地址:https://blog.csdn.net/shulianghan/article/details/104351312 / 开始正 ...

  4. Android百分比布局支持和垂直TextView

    In this tutorial, we'll discuss and implement Android Percent Layout Support Library. Furthermore, w ...

  5. android alpha不起作用,API 28(P)的Android设计支持库不起作用

    我已经成功配置了android-P SDK环境.当我尝试使用android设计支持库时,我遇到项目构建错误.项目配置为: IDE:3.2 Canary 17目标API:28编译API:28 apply ...

  6. androidx和android的区别,【译】使用AndroidX代替Android支持库

    今天,我们发布一个新的Android扩展库(AndroidX)的早期预览版,这表示了支持库的一个新的时代.请为这些变化提出你们的反馈.既然这是一个早期的预览版本,我们并不建议放在生产环境尝试这些功能, ...

  7. 解决 Android 中出现依赖多个版本支持库的问题

    解决 Android 中出现依赖多个版本支持库的问题 参考文章: (1)解决 Android 中出现依赖多个版本支持库的问题 (2)https://www.cnblogs.com/lshare/p/1 ...

  8. 【错误记录】Android Studio 编译时 Kotlin 代码编译报错 ( 升级支持库时处理 @NonNull 参数 )

    文章目录 一.报错信息 二.报错分析 三.解决方案 一.报错信息 最近处理支持库 , 将所有的支持库都升级到了 28.0.028.0.028.0.0 ; implementation 'com.and ...

  9. 从零开始学Xamarin.Forms(四) Android 准备步骤(添加第三方Xamarin.Forms.Labs库)

    从零开始学Xamarin.Forms(四) Android 准备步骤(添加第三方Xamarin.Forms.Labs库) 原文:从零开始学Xamarin.Forms(四) Android 准备步骤(添 ...

最新文章

  1. python的numpy(array)
  2. php酒店预定,php酒店查询预约系统
  3. javascript数组的操作
  4. 前端学习(3130):react-hello-react之回调形式的createRef
  5. (三)ElasticSearch的基本概念
  6. 从RAID看垂直伸缩到水平伸缩的演化
  7. DWZMVC的探索系列——给列表穿上DWZ华丽的外衣
  8. 代码和mysql服务器编码不一致_PL/SQL Developer教程:解决oracle服务器端和客户端字符编码不一致问题...
  9. 报告表明混合云带来IT管理挑战
  10. php面试专题---6、正则表达式考点
  11. 重拾数月前做的微信红包小项目
  12. php 单位食堂订餐,单位饭堂订餐系统(手机订餐)
  13. AI-终极算法-遗传算法
  14. 个人博客系统测试用例
  15. 数据结构(郝斌课程内容概述)
  16. python的pyc反编译
  17. 请详细说下你对 vue 生命周期的理解?
  18. WRF实例运行系列(1)
  19. Vue 可暂停计时器
  20. Unity实现圆形旋转滚动视图

热门文章

  1. mysql currentuser_MySQL中DATABASE()和CURRENT_USER()函数的示例详解
  2. oracle的and怎么用,Oracle的BITAND的方法使用
  3. t-sql查询where in_产品操作MySQL第7篇 – 运算符 - IN
  4. 美国留学计算机网络技术,美国留学计算机专业详解
  5. 报错,could not extract ResultSet; SQL [n/a]; nested exception is org.hibernate.exception.SQLGrammarExc
  6. idea新建xml文件
  7. Web应用运行在pywebview在窗口
  8. C ++ 指针 | this指针_2
  9. springboot三层架构_几张图让你快速了解数据中台技术架构
  10. 2017.9.9 传送带 失败总结