根据.NET implementation support page:
.NetStandard
1.x仅支持Xamarin.Android
7及以上
.NetStandard
2仅支持Xamarin.Android
8及以上
所以我避免将我的pcl升级到.netstandard,假设我不支持Android 5.1 +。
然而,在最近的测试中,我已经将整个Android应用程序转换为Xamarin.Forms PCL
到.NetStandard 2 class library
,并且它在每个平台上都能完美运行(在Android 5.1+以上的模拟器和物理设备中)。< / p>
至少可以说这令人困惑。是否有些东西可能会破坏,或者某些功能可能无法正常工作,或者我会遇到一些我不知道的兼容性问题?或者我不能正确理解.NET实现支持页面和相关概念吗?
答案 0 :(得分:1)
You can read in-depth explanation on Xamarin official webpage:
随着Android平台的发展和新的Android版本的发布, 每个Android版本都分配了一个唯一的整数标识符,称为 API级别。因此,每个Android版本对应一个 Android API级别。因为用户在旧版本以及“旧版”上安装应用程序 最新版本的Android,真实世界的Android应用必须是 旨在使用多个Android API级别。
Android的每个版本都有多个名称:
- Android版本,例如Android 7.1
- 代码名称,例如Nougat A
- 相应的API级别,例如API级别25
Android代码名称可以 对应于多个版本和API级别(如列表中所示) 下面),但每个Android版本只对应一个API级别。
此外,Xamarin.Android定义了映射到的构建版本代码 目前已知的Android API级别。以下列表可以提供帮助 您在API级别,Android版本,代码名称和 Xamarin.Android构建版本代码。
API 26(Android 8.0) - 奥利奥,于2017年8月发布。
API 25(Android 7.1) - Nougat,发布 2016年12月。
.....