安卓:API级别与安卓版本

98

我是Android开发的新手,想知道版本和API级别之间的联系或区别。它们分别指什么?当我决定为API 14或Android版本4.0开发应用程序时,这意味着什么?

或者其中一个是另一个的子集吗?我不太明白它们的区别,以及为什么会有两个计数器?

谢谢

8个回答

86

API是为开发而设计的,因此新版本API的变化更多是“内部”的。但是Android的新版本通常会为用户添加更多“可见”的功能。

请查看此页面http://developer.android.com/guide/appendix/api-levels.html,其中有一个表格显示了版本和API级别之间的关系。


考虑到它是接口(API中的I部分),这是否意味着API的更改实际上更为外向? - 0xC0000022L
你说得对,但是API中的P代表什么呢? :-)所以它是编程接口(也称为Jaa-c上面提到的“内部”),而不是用户界面(也称为“可见”)。 - WhiteEagle

29

多个版本的Android可能具有相同的API级别,但作为整数的API使开发人员更容易地针对设备进行定位。下面的图表将给您一个它们之间关系的想法,但只有文档包含详尽的API级别列表以及它们之间的不同之处。

平台版本

来源:developer.android.com

由于这些数据是从支持Android 2.2及以上版本的新Google Play Store应用中收集的,因此不包括运行较旧版本的设备。然而,在2013年8月,低于Android 2.2的版本仅占检查Google服务器(而不是实际访问Google Play Store的设备)的设备的1%左右。


11
除了提供的答案外,还有一份关于Android平台使用的详细解释(Wikipedia上的平台使用)(permalink)。
这个表格将为您展示Android API与版本之间的区别。

enter image description here


5

3
一台运行Android X版本的设备通常支持为API X及以下版本编写的应用程序。
这意味着,如果您想让您的应用程序支持API 8,那么版本为8的设备将能够运行它,还有版本为9、10、11等的设备。
下面是一张表格,解释了这些数字之间的关系: http://developer.android.com/guide/appendix/api-levels.html

2

简略版:

它们之间的主要区别在于,API级别用于开发Android应用程序框架API,而Android版本则用于提供新功能给用户使用。

详细版:

API级别是一个整数值,唯一标识Android平台版本提供的框架API修订版。

Android平台提供了一个框架API,应用程序可以使用该API与底层的Android系统进行交互。框架API包括:

  • 核心包和类集合
  • 用于声明清单文件的一组XML元素和属性
  • 用于声明和访问资源的一组XML元素和属性
  • 一组意图
  • 一组应用程序可以请求的权限以及包含在系统中的权限执行

更多详情请参见此链接:https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


0

API是一组函数和过程,允许创建访问操作系统、应用程序或其他服务的功能或数据的应用程序。

Android是由Google开发的移动操作系统。

因此,如果我们使用新功能开发新的API,则可能不支持旧的Android操作系统,因此我们采用旧的操作系统,++版本添加对新API的支持,然后就可以了(:

另一方面,如果我们有新的操作系统和新的功能,我们希望升级旧的API以支持它,因此我们++ API的版本。

听起来很奇怪,是吧?


0

简单来说:

Android 版本:Android 是由一群开发者组成的联盟 Open Handset Alliance 开发的移动操作系统,由 Google 赞助商业化,并不断添加新功能更新 Android。因此,每个新版本的 Android 都有一个称为 Android 版本 的版本号。

API 级别:API 级别 允许我们通过整数指定应用程序与一个或多个 Android 版本的兼容性。每个 Android 版本都与一个 API 级别相关联。因此,在设备上,应用程序表达的 API 级别将与设备上安装的 Android 版本相关联的 API 级别进行比较。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接