android API版本对应的系统版本及Android获取手机和系统版本等信息的代码
学了这么久的Android,竟然一直对其API对应的名称关系一值搞不清楚,现在网上认真看了下资料,转载一个觉得写得不错的作者的文章,记下来:
【背景】
之前折腾android期间,慢慢地知道了,Android的版本,有个API Level,其实就是对应着某个Android发布版本的名称。
现在去总结一下。
【折腾过程】
1.参考了:
Supporting Different Platform Versions
Codenames, Tags, and Build Numbers
总结如下:
Android版本名和API Level关系全称 |
Android的版本 |
Android版本名称Code name |
Android的API level |
Android 1.0 (API level 1) |
1.0 |
(no code name) |
API level 1 |
Android 1.1 (API level 2) |
1.1 |
(no code name) |
API level 2 |
Android 1.5 Cupcake (API level 3) |
1.5 |
Cupcake |
API level 3, NDK 1 |
Android 1.6 Donut (API level 4) |
1.6 |
Donut |
API level 4, NDK 2 |
Android 2.0 Eclair (API level 5) |
2.0 |
Eclair |
API level 5 |
Android 2.0.1 Eclair (API level 6) |
2.0.1 |
Eclair |
API level 6 |
Android 2.1 Eclair (API level 7) |
2.1 |
Eclair |
API level 7, NDK 3 |
Android 2.2–2.2.3 Froyo (API level 8) |
2.2.x |
Froyo |
API level 8, NDK 4 |
Android 2.3–2.3.2 Gingerbread (API level 9) |
2.3 – 2.3.2 |
Gingerbread |
API level 9, NDK 5 |
Android 2.3.3–2.3.7 Gingerbread (API level 10) |
2.3.3 – 2.3.7 |
Gingerbread |
API level 10 |
Android 3.0 Honeycomb (API level 11) |
3.0 |
Honeycomb |
API level 11 |
Android 3.1 Honeycomb (API level 12) |
3.1 |
Honeycomb |
API level 12, NDK 6 |
Android 3.2 Honeycomb (API level 13) |
3.2.x |
Honeycomb |
API level 13 |
Android 4.0–4.0.2 Ice Cream Sandwich (API level 14) |
4.0.1 – 4.0.2 |
Ice Cream Sandwich |
API level 14, NDK 7 |
Android 4.0.3–4.0.4 Ice Cream Sandwich (API level 15) |
4.0.3 – 4.0.4 |
Ice Cream Sandwich |
API level 15, NDK 8 |
Android 4.1 Jelly Bean (API level 16) |
4.1.x |
Jelly Bean |
API level 16 |
Android 4.2 Jelly Bean (API level 17) |
4.2.x |
Jelly Bean |
API level 17 |
Android 4.3 Jelly Bean (API level 18) |
4.3.x |
Jelly Bean |
API level 18 |
Android 4.4 KitKat (API level 19) |
4.4 |
KitKat |
API level 19 |
对于各个名称对应的图片,单独整理出来,供参考:
发布名称对应的图标 |
对应的全称 |
Android 1.0 (API level 1) | |
Android 1.1 (API level 2) | |
![]() |
Android 1.5 Cupcake (API level 3) |
![]() |
Android 1.6 Donut (API level 4) |
Android 2.0 Eclair (API level 5) | |
![]() |
Android 2.0.1 Eclair (API level 6) |
Android 2.1 Eclair (API level 7) | |
![]() |
Android 2.2–2.2.3 Froyo (API level 8) |
Android 2.3–2.3.2 Gingerbread (API level 9) | |
![]() |
Android 2.3.3–2.3.7 Gingerbread (API level 10) |
Android 3.0 Honeycomb (API level 11) | |
![]() |
Android 3.1 Honeycomb (API level 12) |
Android 3.2 Honeycomb (API level 13) | |
Android 4.0–4.0.2 Ice Cream Sandwich (API level 14) | |
![]() |
Android 4.0.3–4.0.4 Ice Cream Sandwich (API level 15) |
Android 4.1 Jelly Bean (API level 16) | |
Android 4.2 Jelly Bean (API level 17) | |
![]() |
Android 4.3 Jelly Bean (API level 18) |
![]() |
Android 4.4 KitKat (API lev |
举例说明:
Android开发期间,配置文件中的target或minimal的API level,如果是17,则对应的是4.2.x的Jelly Bean。
Android获取手机和系统版本等信息的代码
有时候需要统计手机的型号和版本号,利用程序可以获取到相应的手机信息,对比两部手机发现,厂商不同,某个信息显示方式也不尽相同,具体见:
String phoneInfo = "Product: " + android.os.Build.PRODUCT;
phoneInfo += ", CPU_ABI: " + android.os.Build.CPU_ABI;
phoneInfo += ", TAGS: " + android.os.Build.TAGS;
phoneInfo += ", VERSION_CODES.BASE: " + android.os.Build.VERSION_CODES.BASE;
phoneInfo += ", MODEL: " + android.os.Build.MODEL;
phoneInfo += ", SDK: " + android.os.Build.VERSION.SDK;
phoneInfo += ", VERSION.RELEASE: " + android.os.Build.VERSION.RELEASE;
phoneInfo += ", DEVICE: " + android.os.Build.DEVICE;
phoneInfo += ", DISPLAY: " + android.os.Build.DISPLAY;
phoneInfo += ", BRAND: " + android.os.Build.BRAND;
phoneInfo += ", BOARD: " + android.os.Build.BOARD;
phoneInfo += ", FINGERPRINT: " + android.os.Build.FINGERPRINT;
phoneInfo += ", ID: " + android.os.Build.ID;
phoneInfo += ", MANUFACTURER: " + android.os.Build.MANUFACTURER;
phoneInfo += ", USER: " + android.os.Build.USER;
// Toast.makeText(this, phoneInfo, Toast.LENGTH_LONG).show();
TextView t = (TextView) findViewById(R.id.main_phoneinfo);
t.setText(phoneInfo);
参考文章:http://www.cnblogs.com/hope250/archive/2011/04/04/2005409.html
android API版本对应的系统版本及Android获取手机和系统版本等信息的代码的更多相关文章
- Android获取手机和系统版本等信息的代码
有时候需要统计手机的型号和版本号,利用程序可以获取到相应的手机信息,对比两部手机发现,厂商不同,某个信息显示方式也不尽相同,具体见: String phoneInfo = "Product: ...
- android屏幕适配的全攻略3-动态获取手机屏幕宽高及动态设置控件宽高
1.获取手机屏幕宽高: DisplayMetrics dm = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetr ...
- Android 如何在Eclipse中查看Android API源码 及 support包源码
当我们阅读android API开发文档时候,上面的每个类,以及类的各个方法都是已经写好的方法和控件,可是我们只是在搬来使用,不知道它的原理,它是如何被实现的.android系统是开源的,所以谷歌官方 ...
- 【转】Android 如何在Eclipse中查看Android API源码 及 support包源码
原文网址:http://blog.csdn.net/vipzjyno1/article/details/22954775 当我们阅读android API开发文档时候,上面的每个类,以及类的各个方法都 ...
- Android API Levels 详解
Android API Levels 当你开发你的Android应用程序时,了解该平台API变更管理的基本方法和概念是很有帮助的.同样的,知道API级别标识以及该标识如何保障你的应用与实际硬件设备相兼 ...
- Android Studio无法关联Api23源码-提示Souces for android api 23 platform not found
最近升级了As,然后忽然就关联不上源码了,很不方便,找个Activity的源码都只有outline没有解释,还提示这个错误: Decompiled .class file, bytecode vers ...
- Android 获取手机的厂商、型号、Android系统版本号等工具类(转载)
Android 获取手机的厂商.型号.Android系统版本号等工具类 1.获取手机制造厂商 2.获取手机型号 3.获取手机系统当前使用的语言 4.获取Android系统版本号 5.获取手机IMEI串 ...
- Android 获取手机的厂商、型号、Android系统版本号、IMEI、当前系统语言等工具类
最近在开发中,需要用到一些系统信息,这里我把这些方法写成一个工具类方便以后复用,该工具类有以下6个功能: 1.获取手机制造厂商 2.获取手机型号 3.获取手机系统当前使用的语言 4.获取Android ...
- Android之——获取手机安装的应用程序
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/47114331 前几篇有关Android的博文中.向大家介绍了几个项目中经常使用的有 ...
随机推荐
- 【Flutter学习】之 Flutter 的生命周期
一,概述 Flutter 的生命周期分为两个部分: Widget 的生命周期 App 的生命周期 二,Widget 的生命周期 Flutter 里的 Widget 分为 StatelessWidget ...
- 旋转屏幕导致Activity重建问题的解决办法
Android开发文档上专门有一小节解释这个问题.简单来说,Activity是负责与用户交互的最主要机制,任何"设置"(Configuration)的改变都可能对Activity的 ...
- (转)Android Studio启动AVD遇到的问题 ( HAXM安装失败)
转:https://zhidao.baidu.com/question/561420516357269084.html?qq-pf-to=pcqq.c2c Android Studio启动虚拟机的时候 ...
- 在RedHat 7.2中安装boost库
在RedHat 7.2中安装boost库 环境,其它版本类似 Redhat7.2 64bit boost 1.64.0 步骤 去 boost官网 下载想要版本的.tar.gz,如下图 解压tar -v ...
- HTML5: HTML5 介绍
ylbtech-HTML5: HTML5 介绍 1. 什么是 HTML5?返回顶部 HTML5 是下一代 HTML 标准. HTML,HTML 4.01的上一个版本诞生于1999年.自从那儿以后, ...
- Openstack组件实现原理 — Keystone认证功能
目录 目录 前言 Keystone安装列表 Keystone架构 Keystone的管理对象 一个理解Keystone管理对象功能的例子 Keystone管理对象之间的关系 Keystone V3的新 ...
- Java核心基础知识(一):概念、语法、使用、源码
1. Java中OOP的特点? OOP(Object Oriented Programming):面向对象编程.具有封装.继承.多态三大特征. 封装:解决数据安全性问题: 继承:解决代码的重用性问题: ...
- 3.Jmeter 快速入门教程(三-1) --添加响应断言(即loadrunner中所指的检查点)
上一节课,我们创建了一个测试场景,并进行了少量vuser的负载测试. 有时候我们执行了测试,但是发现并不是所有事务都执行成功了. 那是因为我们只是发起了测试,但并没有对每次请求测试的返回作校验. 所以 ...
- dcoker镜像的分层
镜像分层的好处:复用节省磁盘空间,相同的内容只需加载一份到内存 修改dockerfile之后,再次构建速度加快 docker优化: 1.尽可能地选择体积小的linux发行版,比如alpine 2.尽可 ...
- 在webpack4 中利用Babel 7取消严格模式方法
报错信息: Uncaught TypeError: 'caller', 'callee', and 'arguments' properties may not be accessed on stri ...