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的博文中.向大家介绍了几个项目中经常使用的有 ...
随机推荐
- <Jmeter入门不放弃>之<3.两种常见录制脚本的方法>
关于录制,我想表达的是,并不要以为他很低端,解决需求才是王道,大家这里参考学习的时候,我就不在这里配截图了,因为需要你打开工具根据文档自己去找,才有印象,大家一定要启动JMeter!跟着理解操作 录制 ...
- JMeter 阶梯式加压测试插件 Stepping Thread Group
在日常性能测试过程中,有时需要对被测对象不断的增加压力,直至达到某个值后,并持续运行一段时间.这里将借助jmeter插件模拟这种情况. 本文介绍在jmeter中,使用插件Stepping Thread ...
- ALAsset和ALAssetRepresentation详解
ALAsset类代表相册中的每个资源文件,可以通过它获取资源文件的相关信息还能修改和新建资源文件,ALAssetRepresentation类代表相册中每个资源文件的详细信息,可以通过它获取资源的大小 ...
- 尚学linux课程---12、vim操作命令2
尚学linux课程---12.vim操作命令2 一.总结 一句话总结: 要看不同的视频,每个视频的关键点都不一样,不如之间的的视频就没讲到vim中set nu是什么意思 学了的内容一定要练,不然真的是 ...
- react 中使用 JsBarcode 显示条形码
import React from 'react';import JsBarcode from 'jsbarcode'; export class RefundSheet extends React. ...
- Qwidget布局操作之QGridLayout(网格布局)
QMainWindow并没有setLayout()函数,因此不能使用setLayout()函数来设置layout,需要使用间接的方法. 需要做的只是先定义一个QWidget对象,然后使用QMainWi ...
- Codeforces Round #499 (Div. 2) Problem-A-Stages(水题纠错)
CF链接 http://codeforces.com/contest/1011/problem/A Natasha is going to fly to Mars. She needs to bui ...
- Rust <0>:源代码组织,Cargo 入门
Rust 源代码组织,使用配套的 Cargo 工具,其功能强大,程序员可摆脱 C/C++ 中需要自行维护 make.cmake 之类配置的工作量. 初始化一个项目: cargo new --bin h ...
- JasperReports教程
JasperReports教程 Jasper报表是一个开源的Java报表引擎,是基于Java的,它没有自己的表达式语法. 由于JasperReports是一个Java类库,而不是针对最终用户,而是有针 ...
- linux下文件编码格式转换方法(gb18030/utf-8)
文章转载自:http://www.firekyrin.com/archives/249.html linux下文件编码格式转换方法(gb18030/utf-8) 在Linux做开发或者系统管理遇到乱 ...