In a project I need to find if the user is using android 4.2.1 and above. Please help
在一个项目中,我需要找到用户是否使用Android 4.2.1及更高版本。请帮忙
I have android verion as a String in java. I am aware i cam do this without using regular expression, but i just need to try it using regular expression
我在java中将android verion作为String。我知道我在不使用正则表达式的情况下执行此操作,但我只需要使用正则表达式进行尝试
I can use something like
我可以用类似的东西
Version = "4.2.2"
if(version.matches("[4-99]\\.[2-99]\\.[0-99]")) {
return true;
} else {
return false
}
This works till android 5.0.0 is released and after that it fails till 5.2.0
这有效直到android 5.0.0发布,之后它会失败直到5.2.0
3 个解决方案
#1
1
You can get RELEASE
version that has 2 or 3 levels: major, minor and build respectively:
您可以获得具有2或3个级别的RELEASE版本:major,minor和build:
String myVersion = android.os.Build.VERSION.RELEASE;
String osMajor = "0";
String osMinor = "0";
String osBuild = "0";
if(myVersion.matches("[0-9]+.[0-9]+.[0-9]+")){
osMajor = myVersion.split("\\.")[0];
osMinor = myVersion.split("\\.")[1];
osBuild = myVersion.split("\\.")[2];
}
else if(myVersion.matches("[0-9]+.[0-9]+")){
osMajor = myVersion.split("\\.")[0];
osMinor = myVersion.split("\\.")[1];
}
#2
0
You should look at http://developer.android.com/reference/android/os/Build.VERSION_CODES.html
你应该看看http://developer.android.com/reference/android/os/Build.VERSION_CODES.html
android.os.Build.VERSION.RELEASE
returns the user-visible version string. E.g., "1.0" or "3.4b5".
android.os.Build.VERSION.RELEASE返回用户可见的版本字符串。例如,“1.0”或“3.4b5”。
#3
0
This:
String[] duh = version.split(".");
// Convert the three version numbers to 3 ints, and then....
int vers = (int1 * 100) + (int2 * 10) + int3;
#1
1
You can get RELEASE
version that has 2 or 3 levels: major, minor and build respectively:
您可以获得具有2或3个级别的RELEASE版本:major,minor和build:
String myVersion = android.os.Build.VERSION.RELEASE;
String osMajor = "0";
String osMinor = "0";
String osBuild = "0";
if(myVersion.matches("[0-9]+.[0-9]+.[0-9]+")){
osMajor = myVersion.split("\\.")[0];
osMinor = myVersion.split("\\.")[1];
osBuild = myVersion.split("\\.")[2];
}
else if(myVersion.matches("[0-9]+.[0-9]+")){
osMajor = myVersion.split("\\.")[0];
osMinor = myVersion.split("\\.")[1];
}
#2
0
You should look at http://developer.android.com/reference/android/os/Build.VERSION_CODES.html
你应该看看http://developer.android.com/reference/android/os/Build.VERSION_CODES.html
android.os.Build.VERSION.RELEASE
returns the user-visible version string. E.g., "1.0" or "3.4b5".
android.os.Build.VERSION.RELEASE返回用户可见的版本字符串。例如,“1.0”或“3.4b5”。
#3
0
This:
String[] duh = version.split(".");
// Convert the three version numbers to 3 ints, and then....
int vers = (int1 * 100) + (int2 * 10) + int3;