您的位置:首页 > 移动开发 > Unity3D

unity获取手机电量信息

2016-10-09 10:52 531 查看
前段时间项目需要做一个获取手机电量信息的功能,我首先得想法是通过android获取后传到unity里面这样来做,但是在无意间发现一篇文章,里面是直接在unity里面获取的,这样无疑简单了方便了很多,要是这样的方法有什么弊端的话,还请大家指出哦。话不多说,直接上代码:

using UnityEngine;

using System.Collections;

using System;

public class BatteryAndTime : MonoBehaviour

{

    string _time = string.Empty;

    string _battery = string.Empty;

    void Start()

    {

        StartCoroutine("UpdataBattery");

    }

    void OnGUI()

    {

        GUILayout.Label(_battery, GUILayout.Width(100), GUILayout.Height(100));

    }

    IEnumerator UpdataBattery()

    {

        while (true)

        {

            //此处的battery是一个百分比数字,比如电量是93%,则这个数字是93

            _battery = GetBatteryLevel().ToString();

            print("battery::::" + _battery);

            yield return new WaitForSeconds(300f);

        }

    }

    int GetBatteryLevel()

    {

        try

        {

            string CapacityString = System.IO.File.ReadAllText("/sys/class/power_supply/battery/capacity");

            return int.Parse(CapacityString);

        }

        catch (Exception e)

        {

            Debug.Log("Failed to read battery power; " + e.Message);

        }

        return -1;

    }

}

另外需要指出的是这里需要哦打包到手机上运行才有效果哦!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息