Android精确判断是否为64位

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;

    }


转自:replugin-host-lib开源代码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 是的,Android可以判断当前语言是否为设定显示的语言。可以使用以下代码: ```java Locale currentLocale = getResources().getConfiguration().locale; String currentLanguage = currentLocale.getLanguage(); ``` 这将返回当前设备的语言代码,例如“zh”表示中文,“en”表示英语等。你可以使用这个代码来判断当前语言是否是你想要显示的语言。 ### 回答2: 在 Android 中,可以使用以下方法判断当前语言是否为设定的显示语言: 首先,可以通过获取系统的 Locale 对象来获取当前的语言设置。可以使用以下代码来获取系统的 Locale 对象: ```java Locale currentLocale = getResources().getConfiguration().locale; ``` 然后,可以通过比较当前的语言设置和设定的显示语言来判断是否一致。假设我们的设定的显示语言为英语(English): ```java if (currentLocale.getLanguage().equals("en")) { // 当前语言为英语 } else { // 当前语言不是英语 } ``` 以上代码会判断当前语言是否为设定的显示语言中的一种。如果当前语言是英语(en),则执行相应的操作;如果当前语言不是英语,则执行另外的操作。 需要注意的是,上述代码仅判断语言设置是否为英语,而不考虑其他地区或国家的变体。如果需要更精确地判断显示语言,可以使用 `currentLocale.toString()` 来获取完整的语言代码,并根据需要进行判断。 另外,为了能够获取资源文件中的对应语言的字符串,还可以使用 `getResources().getConfiguration().locale.getDisplayLanguage()` 方法来获取当前语言的显示名称,从而更加友好地展示给用户。 总之,通过获取系统的 Locale 对象,并与设定的显示语言进行比较,我们可以判断当前的语言是否为设定的显示语言。 ### 回答3: 在Android中,我们可以通过以下方法来判断当前语言是否为设定的显示语言: 1. 首先,我们需要获取当前系统的语言设置。我们可以使用`Locale.getDefault().getDisplayLanguage()` 方法来获取当前语言的显示名称。 2. 接下来,我们需要比较当前系统语言和设定的显示语言是否匹配。假设我们要判断的显示语言为英语,我们可以使用以下代码进行判断: ``` String displayLanguage = Locale.getDefault().getDisplayLanguage(); String targetLanguage = "English"; // 设定的显示语言 if (displayLanguage.equalsIgnoreCase(targetLanguage)) { // 当前语言为设定的显示语言 Log.d("Language", "当前语言为设定的显示语言"); } else { // 当前语言不为设定的显示语言 Log.d("Language", "当前语言不为设定的显示语言"); } ``` 以上代码将根据当前系统语言是否与设定的显示语言相匹配打印出相应的Log信息。 需要注意的是,`getDisplayLanguage()` 方法返回的是当前语言的显示名称,并不是实际的语言代码。如果需要判断实际的语言代码,可以使用`Locale.getDefault().getLanguage()` 方法来获取。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值