Unity 获取设备网络状态,电量,系统权限,时间

/***
 * 
 *    Title: MXFramework
 *           主题: 获取设备信息
 *    Description: 
 *           功能:1.获取系统时间
 *                2.获取设备电量
 *                3.获取网络状态
 *                4.获取设备权限
 *    Date: 2020
 *    Version: v4.0版本
 *    Modify Recoder: 
 *      
 */

using System;
using UnityEngine;

namespace Mx.Util
{
    ///

获取设备信息
    public class DeviceInfo
    {
        #region 获取系统时间

        public static string GetTime()
        {
            string times = null;

            DateTime now = DateTime.Now;

            times = (now.Hour > 12) ? now.ToString("hh:mm") + " AM" : now.ToString("hh:mm") + " PM";

            return times;
        }

        #endregion

        #region 获取网络状态

        ///

获取网络状态
        public static EnumNetWorkState GetNetWorkState()
        {
            EnumNetWorkState enumNetworkStatus = EnumNetWorkState.None;

            //网络不可用状态
            if (Application.internetReachability == NetworkReachability.NotReachable)
            {
                enumNetworkStatus = EnumNetWorkState.No;
            }
            //当用户使用WiFi时    
            else if (Application.internetReachability == NetworkReachability.ReachableViaLocalAreaNetwork)
            {
                enumNetworkStatus = EnumNetWorkState.Wif;
            }
            //当用户使用移动网络时    
            else if (Application.internetReachability == NetworkReachability.ReachableViaCarrierDataNetwork)
            {
                enumNetworkStatus = EnumNetWorkState.Mobile;
            }

            return enumNetworkStatus;
        }

        ///

获取网络是否开启
        public static bool GetNetWorkIsOpen()
        {
            EnumNetWorkState netWorkState = GetNetWorkState();
            return (netWorkState == EnumNetWorkState.Mobile || netWorkState == EnumNetWorkState.Wif);
        }

        #endregion

        #region 获取电量

        ///


        /// 获取电量
        ///

        /// The battery level.
        public static float GetBatteryLevel()
        {
            float floatBatteryLevel = (float.Parse(SystemInfo.batteryLevel.ToString())) * 100;
            return floatBatteryLevel;
        }

        #endregion

        #region 获取权限

        ///


        /// 获取是否拥有权限(麦克风/相机)
        ///

        /// 相机/麦克风
        public static bool GetUserAuthorization(UserAuthorization userAuthorization)
        {
            return Application.HasUserAuthorization(userAuthorization);
        }

        #endregion
    }

    ///

网络状态类型
    public enum EnumNetWorkState
    {
        /// 未知错误
        None = -1,
        /// 没有网络
        No,
        /// Wif网络
        Wif,
        /// 移动网络
        Mobile,
    }

}

你可能感兴趣的:(Unity,unity)