如何检查的Android系统版本?如何检查的Android系统版本?(How can I check

2019-05-10 13:25发布

有谁知道我可以检查系统版本(例如1.02.2 ,等)编程?

Answer 1:

检查android.os.Build.VERSION

  • CODENAME :目前的开发代号,或字符串“REL”如果这是一个发布版本。
  • INCREMENTAL :所使用的底层源控制来表示此生成的内部值。
  • RELEASE :用户可见的版本字符串。


Answer 2:

例如如何使用它:

if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.GINGERBREAD) {
     // only for gingerbread and newer versions
}


Answer 3:

Build.Version是地方去为这个数据。 下面是如何格式化的代码片段。

public String getAndroidVersion() {
    String release = Build.VERSION.RELEASE;
    int sdkVersion = Build.VERSION.SDK_INT;
    return "Android SDK: " + sdkVersion + " (" + release +")";
}

像这样的 “Android SDK:19(4.4.4)”



Answer 4:

Build.VERSION.RELEASE;

这将会给你的你的版本的实际数量; 又名2.3.3或2.2。 使用Build.VERSION.SDK_INT的问题是,如果你有一个根深蒂固的手机或自定义ROM,你可以有一个没有标准的操作系统(又名我的Android运行2.3.5),这将使用Build.VERSION.SDK_INT时返回一个空所以Build.VERSION.RELEASE将工作无论什么!



Answer 5:

用于检查设备的版本,其是大于或等于棉花糖,使用此代码。

if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M){

    }

对于ckecking别人只是改变VERSION_CODES喜欢,
K代表奇巧,
L用loolipop N代表牛轧糖等...



Answer 6:

你可以找到Android版本看Build.VERSION

该文档建议您检查Build.VERSION.SDK_INT在对阵值Build.VERSION_CODES

这只要你意识到这是罚款Build.VERSION.SDK_INT仅在API等级4,这是说的Android 1.6(甜甜圈)推出。 因此,这不会影响到你,但如果你确实想你的应用在Android 1.5上或更早版本,那么你将不得不使用过时的Build.VERSION.SDK代替。



Answer 7:

我不能对答案进行评论,但在Kaushik的回答一个巨大的错误:SDK_INT是不一样的系统版本,但实际上指的是API级别。

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH){
    //this code will be executed on devices running ICS or later
}

Build.VERSION_CODES.ICE_CREAM_SANDWICH等于14 14是冰淇淋三明治的API级别,而系统版本为4.0。 所以,如果你写4.0,您的代码将被从甜甜圈开始的所有设备(执行,因为4甜甜圈的API级别Build.VERSION_CODES.DONUT等于4)。

if(Build.VERSION.SDK_INT >= 4.0){
    //this code will be executed on devices running on DONUT (NOT ICS) or later
}

这个例子是一个原因,使用“幻数”是一个坏习惯。



Answer 8:

例如,一个功能只适用于api21了我们api21修复bug下来以下

    if(Build.VERSION.SDK_INT >= 21) {
    //only api 21 above
    }else{
   //only api 21 down
    }


Answer 9:

要知道, Build.VERSION.SDK_INT是不可靠的,它是由@ Falcon165o提到,最近我遇到了一个了。

因此,要获得字符串数据(基于Android版本列表目前已安装Android的),我做了这样的代码:

Java的

//Current Android version data
public static String currentVersion(){
    double release=Double.parseDouble(Build.VERSION.RELEASE.replaceAll("(\\d+[.]\\d+)(.*)","$1"));
    String codeName="Unsupported";//below Jelly bean OR above Oreo
    if(release>=4.1 && release<4.4)codeName="Jelly Bean";
    else if(release<5)codeName="Kit Kat";
    else if(release<6)codeName="Lollipop";
    else if(release<7)codeName="Marshmallow";
    else if(release<8)codeName="Nougat";
    else if(release<9)codeName="Oreo";
    return codeName+" v"+release+", API Level: "+Build.VERSION.SDK_INT;
}

科特林

fun currentVersion(): String {
    val release = java.lang.Double.parseDouble(java.lang.String(Build.VERSION.RELEASE).replaceAll("(\\d+[.]\\d+)(.*)", "$1"))
    var codeName = "Unsupported"//below Jelly bean OR above Oreo
    if (release >= 4.1 && release < 4.4)  codeName = "Jelly Bean"
    else if (release < 5) codeName = "Kit Kat"
    else if (release < 6) codeName = "Lollipop"
    else if (release < 7) codeName = "Marshmallow"
    else if (release < 8) codeName = "Nougat"
    else if (release < 9) codeName = "Oreo"
    return codeName + " v" + release + ", API Level: " + Build.VERSION.SDK_INT
}

输出它的生产实施例:

棉花糖V6.0,API等级:23



Answer 10:

if (Build.VERSION.SDK_INT >= ApiHelper.VERSION_CODES.HONEYCOMB_MR2) {
//do anything you  like.
}


Answer 11:

使用这个类

import android.os.Build;

/**
 * Created by MOMANI on 2016/04/14.
 */
public class AndroidVersionUtil {
    public static int getApiVersion() {
        return android.os.Build.VERSION.SDK_INT;
    }

    public static boolean isApiVersionGraterOrEqual(int thisVersion) {
        return android.os.Build.VERSION.SDK_INT >= thisVersion;
    }
}


Answer 12:

使用此方法:

 public static String getAndroidVersion() {
        String versionName = "";

        try {
             versionName = String.valueOf(Build.VERSION.RELEASE);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return versionName;
    }


文章来源: How can I check the system version of Android?