美文网首页
LanguageChecker检测当前手机语言

LanguageChecker检测当前手机语言

作者: 颤抖的闪电 | 来源:发表于2018-06-21 10:07 被阅读0次
/**
 * Created by baitu on 17/8/28.
 * 语言检测
 */
public class LanguageChecker {

    private static final String TAG = "LanguageChecker";

    private static String sCurrentLanguage;

    public static void init() {
        initLanguage();
    }

    /**
     * 是否为中文环境,包括港澳台
     */
    public static boolean isZH() {
        if (TextUtils.isEmpty(sCurrentLanguage)) {
            initLanguage();
        }

//        LogUtils.d(TAG, "language:" + sCurrentLanguage);

        return sCurrentLanguage.equals(new Locale("zh").getLanguage());
    }

    private static void initLanguage() {
        Locale locale;
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
            locale = Locale.getDefault(Locale.Category.DISPLAY);
        } else {
            //系统默认的语言
            locale = Locale.getDefault();
        }
        sCurrentLanguage = locale.getLanguage();
    }

    /**
     * @return 格式:en,zh,不带国家
     */
    public static String getCurrentLanguage() {
        if (TextUtils.isEmpty(sCurrentLanguage)) {
            initLanguage();
        }
        return sCurrentLanguage;
    }

    public interface Switch {
        void onZH();

        void onEN();
    }

    public static void onDifferent(Switch l) {
        if (isZH()) {
            l.onZH();
        } else {
            l.onEN();
        }
    }
}

相关文章

网友评论

      本文标题:LanguageChecker检测当前手机语言

      本文链接:https://www.haomeiwen.com/subject/iiqqyftx.html