【问题标题】:What is compatibility behaviours in android?什么是android中的兼容性行为?
【发布时间】:2016-05-09 05:44:54
【问题描述】:

在阅读 targetSDKVersion 的文档时,我遇到了一个术语,即“兼容性行为”。

一个整数,指定应用程序所针对的 API 级别。如果 未设置,默认值等于给 minSdkVersion 的值。这 属性通知系统您已针对目标进行了测试 版本和系统不应启用任何兼容性行为 保持您的应用程序与目标版本的前向兼容性。 该应用程序仍然能够在旧版本上运行(低至 minSdkVersion)。

我不明白,这里的兼容性行为是什么。任何例子都可以帮助我清楚地说明这个术语。

【问题讨论】:

    标签: android android-compatibility forward-compatibility


    【解决方案1】:

    这意味着,对于 targetSDKVersion 和更高版本的 API,代码将按照它运行。对于 minSdk 到 targetSDKVersion-1,系统可以完成向后兼容的转换/行为。

    示例:

    targetSdkVersion 21 // <= Lollipop 5.x 
    minSdkVersion 17 // 4.4 KitKat <= you support this version thanks to some compability behaviors (it's done by the system so you don't have to woory)
    

    如果您的应用在 Android 6.0 (Marshmallow) API 23 上运行,由于您支持 API/SDK 21,因此您的应用将在 Android 6.0 上运行而没有任何兼容性行为。

    有关 API 行为兼容性的详细信息,请参见此处(第 14 页): http://static.googleusercontent.com/media/source.android.com/en//compatibility/android-cdd.pdf

    基本上这意味着,如果您调用一个函数,无论 API 版本如何,行为都应该是相同的。特别是当你发布新的 API 时,你通常会扩展、修改、修复代码,这与以前的版本行为不一致。因此,为了防止由于代码更新引起的任何问题,Android 提供了一个兼容性行为层来保证相同的行为。

    【讨论】:

      猜你喜欢
      • 2017-10-02
      • 1970-01-01
      • 1970-01-01
      • 2013-04-13
      • 2017-04-04
      • 2013-02-05
      • 2018-01-09
      • 1970-01-01
      • 2022-12-08
      相关资源
      最近更新 更多