package com.tsgame.tsgame_niuniu.util;

import android.os.Build;
import android.text.TextUtils;
public class EnvironmentUtil {

    /**
     * 判断当前系统是否为鸿蒙系统 (HarmonyOS)
     * @return true=鸿蒙系统, false=安卓系统
     */
    // public static boolean isHarmonyOS() {
    //     try {
    //         // 通过获取华为特定的构建类判断
    //         Class<?> buildExClass = Class.forName("com.huawei.system.BuildEx");
    //         Object osBrand = buildExClass.getMethod("getOsBrand").invoke(buildExClass);
    //         if ("Harmony".equalsIgnoreCase(osBrand != null ? osBrand.toString() : null)) {
    //             return true;
    //         }
    //     } catch (Throwable e) {
    //         // ignore
    //     }
        
    //     try {
    //         // 备用判断：通过 ohos.system.version 判断
    //         Class<?> clz = Class.forName("ohos.system.version.SystemVersion");
    //         return clz != null;
    //     } catch (Throwable e) {
    //         // ignore
    //     }
        
    //     return false;
    // }
    /**
     * 判断是否为鸿蒙系统
     */
    public static boolean isHarmonyOS() {
        boolean isHarmony = false;
        try {
            Class<?> clz = Class.forName("com.huawei.system.BuildEx");
            java.lang.reflect.Method method = clz.getMethod("getOsBrand");
            String brand = (String) method.invoke(clz);
            if ("Harmony".equalsIgnoreCase(brand)) {
                isHarmony = true;
            }
        } catch (Exception e) {
            // Ignored
        }
        if (!isHarmony) {
            try {
                Class<?> propertyClass = Class.forName("android.os.SystemProperties");
                java.lang.reflect.Method getMethod = propertyClass.getMethod("get", String.class);
                String version = (String) getMethod.invoke(propertyClass, "hw_sc.build.platform.version");
                isHarmony = !TextUtils.isEmpty(version);
            } catch (Exception e) {
                // Ignored
            }
        }
        
        return isHarmony;
    }
}
