是否有可能检测用户是否在运行Android?
我有一个带有Android N开发者预览的Nexus 6。如果我尝试使用Build.VERSION.SDK_INT获得构建版本,它将返回23,相当于Android。
发布于 2016-04-01 12:59:23
引用myself
按照谷歌用于M Developer预览的方法,您可以选择
Build.VERSION.CODENAME:
public static boolean iCanHazN() {
return("N".equals(Build.VERSION.CODENAME));
}我没有像may 7009的评论所暗示的那样,看Build.VERSION.RELEASE,尽管这也是可能的。
另外,如果你阅读这篇文章是从遥远的未来( Android已经以最终形式发布),那么你应该能够使用Build.VERSION.SDK_INT和Build.VERSION_CODES.N。上面的攻击是由于Google处理这些开发者预览的独特之处。
发布于 2016-11-07 15:24:51
我建议使用Integer值来检查Android版本,而不是字符串。
public boolean isAndroidN() {
return Build.VERSION.SDK_INT == Build.VERSION_CODES.N;
}请记住,compileSdkVersion必须在manifests.xml中达到24或更高版本:
compileSdkVersion 24发布于 2017-05-15 09:19:58
方法1:(推荐)使用支持库android.support.v4.os.BuildCompat.isAtLeastN。
方法2:将其用作“真实”版本代码:Build.VERSION.SDK_INT < 23 || Build.VERSION.PREVIEW_SDK_INT == 0 ? Build.VERSION.SDK_INT : Build.VERSION.SDK_INT + 1。
https://stackoverflow.com/questions/36356819
复制相似问题