Android精确判断是否为64位
来源:互联网 发布:ansys软件 编辑:程序博客网 时间:2024/06/08 11:33
private static boolean is64BitImpl() {
try {
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) {
// Android API 21之前不支持64位CPU
return false;
}
Class<?> clzVMRuntime = Class.forName("dalvik.system.VMRuntime");
if (clzVMRuntime == null) {
return false;
}
Method mthVMRuntimeGet = clzVMRuntime.getDeclaredMethod("getRuntime");
if (mthVMRuntimeGet == null) {
return false;
}
Object objVMRuntime = mthVMRuntimeGet.invoke(null);
if (objVMRuntime == null) {
return false;
}
Method sVMRuntimeIs64BitMethod = clzVMRuntime.getDeclaredMethod("is64Bit");
if (sVMRuntimeIs64BitMethod == null) {
return false;
}
Object objIs64Bit = sVMRuntimeIs64BitMethod.invoke(objVMRuntime);
if (objIs64Bit instanceof Boolean) {
return (boolean) objIs64Bit;
}
} catch (Throwable e) {
if (BuildConfig.DEBUG) {
e.printStackTrace();
}
}
return false;
try {
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) {
// Android API 21之前不支持64位CPU
return false;
}
Class<?> clzVMRuntime = Class.forName("dalvik.system.VMRuntime");
if (clzVMRuntime == null) {
return false;
}
Method mthVMRuntimeGet = clzVMRuntime.getDeclaredMethod("getRuntime");
if (mthVMRuntimeGet == null) {
return false;
}
Object objVMRuntime = mthVMRuntimeGet.invoke(null);
if (objVMRuntime == null) {
return false;
}
Method sVMRuntimeIs64BitMethod = clzVMRuntime.getDeclaredMethod("is64Bit");
if (sVMRuntimeIs64BitMethod == null) {
return false;
}
Object objIs64Bit = sVMRuntimeIs64BitMethod.invoke(objVMRuntime);
if (objIs64Bit instanceof Boolean) {
return (boolean) objIs64Bit;
}
} catch (Throwable e) {
if (BuildConfig.DEBUG) {
e.printStackTrace();
}
}
return false;
}
转自:replugin-host-lib开源代码
阅读全文
0 0
- Android精确判断是否为64位
- 如何判断是否为64位CPU
- 判断是否为64位机
- 64位移植:判断库dll是否为64位
- android判断是否为手机号码,隐藏中间4位
- 用VC判断系统CPU是否为64位
- 判断是否为64,32,16位系统
- 利用文本编辑器判断dll/exe是否为64位
- int_size_is_32(),判断int是否为32位
- 判断主机操作系统是否为x64位
- Android判断是否为Wifi
- 判断CPU是否64位
- 判断系统是否64位
- How to:Installshield判断操作系统是否为64位,并且为操作注册表进行设置
- bash shell 根据系统硬件平台名称判断是否为 64 位平台
- vc判断指定进程或程序名是否存在和进程为64或者32位
- 判断连续的位区间是否全部为0
- Java判断十一位字符串是否为纯数字
- (转)[Android] 防止连续点击打开两个重复页面的小技巧
- 面试必懂之数组排序法总结
- 特征分解、奇异值分解、PCA(个人理解)
- Oracle 更改表名称的几种方式
- 组合模式
- Android精确判断是否为64位
- 【矩阵快速幂 && 循环节】HDU
- Git bash中文乱码——say goodbye
- kafka monitor的使用
- 移动端那些事儿(一)移动端开发注意事项
- Java实现CRC16 CCITT
- centos bind dns服务器安装
- 闭包的完美阐述
- Java内存管理和垃圾处理机制