java层获取电量需要注册BroadcastReceiver,如果native层通过反射来调用会非常麻烦。
这里提供一个直接读取电量的方法
string readFile(string fileName)
{
string con = "";
FILE *fd = NULL;
char line[256] = { 0 };
fd = fopen(fileName.c_str(), "r");
if (fd == NULL){
return con;
}
fgets(line, 256, fd);
con = line;
fclose(fd);
return con;
}
int getPowerCapacity()
{
DIR *pdir = NULL;
int iCap = -1;
struct dirent *pde = NULL;
string dirName = "/sys/class/power_supply";
pdir = opendir(dirName.c_st