Android 判断手机系统语言是简体中文的坑

为了简便,开始是下面的写法,讲道理没问题....

/**
 * 判断是否是简体中文
 */
public static boolean isZhRCN() {
   return Locale.getDefault().equals(Locale.SIMPLIFIED_CHINESE);
}
/** Useful constant for language.
 */
static public final Locale SIMPLIFIED_CHINESE = createConstant("zh", "CN");
然而三星不讲道理,三星S8,从英文切到简体中文,再调这个方法,会发现返回时false,打印locale会发现是zh_rCN_Hans,坑不坑~这里国家码和语言码分开判断就没问题...

/**
 * 判断是否是简体中文
 */
public static boolean isZhRCN() {
   if (getLanguageCode(AppUtils.getContext()).equalsIgnoreCase("zh")
         && getCountryCode(AppUtils.getContext()).equalsIgnoreCase("cn") ) {
      return true;
   }
   return false;
}



阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页