有人知道我如何通过编程检查系统版本(例如1.0、2.2等)吗?


当前回答

检查android.os.Build.VERSION。

CODENAME:当前的开发代码名,如果这是一个发布版本,则为字符串“REL”。 INCREMENTAL:底层源代码控制用来表示此构建的内部值。 RELEASE:用户可见的版本字符串。

其他回答

检查android.os.Build.VERSION。

CODENAME:当前的开发代码名,如果这是一个发布版本,则为字符串“REL”。 INCREMENTAL:底层源代码控制用来表示此构建的内部值。 RELEASE:用户可见的版本字符串。

你可以在Build.VERSION中找到Android版本。

文档建议您检查Build.VERSION。SDK_INT对应Build.VERSION_CODES中的值。

这很好,只要你意识到Build.VERSION。SDK_INT只在API Level 4中引入,也就是Android 1.6 (Donut)。所以这不会影响你,但如果你想让你的应用在Android 1.5或更早的版本上运行,那么你必须使用已弃用的Build.VERSION.SDK。

使用这种方法:

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

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

要检查设备版本大于或等于Marshmallow,请使用此代码。

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

    }

如果要检查其他的,只需要更改VERSION_CODES, K代表kitkat, L代表棒棒糖 N代表牛轧糖等等……

使用这个类

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;
    }
}