unity中获取手机电量

Posted FingerCaster

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了unity中获取手机电量相关的知识,希望对你有一定的参考价值。

注意:只能在真机中显示,编辑器没法显示

a.android
  1.通过C#直接读取,下面的GetBatteryLevel()方法
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;
}
}
  b.ios
  iOS需要用到xcode编写.a静态链接库
  1.在xcode编写.mm文件,实现C++调用iOS的API得到手机电量,部分代码如下:
  
  float getiOSBatteryLevel()
    {
      [[UIDevice currentDevice] setBatteryMonitoringEnabled:YES];
      return [[UIDevice currentDevice] batteryLevel];
    }
  
  2.将上面.mm编译好的.a文件放入Unity工程Assets-Plugins-iOS下(路径不能错);在C#中使用下面的方法调用:
[ DllImport( "__Internal" )]
private static extern float getiOSBatteryLevel();

在C#调用此函数就可获得iOS电量

以上是关于unity中获取手机电量的主要内容,如果未能解决你的问题,请参考以下文章

unity探索者之获取设备当前电量

Android_(自动化)自动获取手机电池的剩余电量

Android 获取手机当前电量

如何在独立的智能手表应用程序或表盘中检查蓝牙连接手机的电池电量? [关闭]

unity3d怎么获取安卓手机相册路径

Unity学习Unity获取Android手机局域网(WIFI)IP