当“/sys/class/power_supply/Battery”不可读时,Android NDK中的电池状态
Battery status in Android NDK when `/sys/class/power_supply/battery` is not readable
我有一个NDK应用程序,可以从/sys/class/power_supply/battery
读取电池状态信息。这在大多数设备上运行良好。在某些设备上,该目录不可读。例如,在NVIDIA Shield上:
$ adb shell
shell@shieldtablet:/ $ ls /sys/class/power_supply/battery/
/sys/class/power_supply/battery/: Permission denied
是否有其他方法可以在这些设备的NDK中获取电池信息?
用于获取电池信息的Java API照常工作,但这是针对NDK应用程序的,所以我希望使用仅C++的方法。
我通过在Java中创建一个全局对象来解决这个问题,其中BroadcastReceiver
监听ACTION_BATTERY_CHANGED
广播。它缓存这些值,我使用JNI从C++中查询它们。我很想知道一个更清洁的解决方案。
相关文章:
- 如何使用ndk-build.cmd构建Android.so文件
- Android NDK传感器向事件队列报告奇怪的间隔
- Android NDK 编译 LAME HAVE_MPGLIB > 'interface.h' 文件未找到
- Android NDK clang 编译器错误在 Windows 上显示'No such file or directory'
- 在 constexpr 构造函数 (c++17) 中赋值到 const char * 在使用 Android NDK 时
- 如何在 android ndk 上链接 C 和 C++ 代码,以及 C 和 C++ 运行时库(包括 STL)?
- Android NDK 未定义对ASensorEventQueue_registerSensor的引用
- 如何将 libjpeg-turbo Android NDK 添加为静态库
- 在 Flutter 应用程序中使用 Android NDK 中的 AssetManager 类
- Android NDK - 无法在 Visual Studio 2017 中调试
- 不再支持Android NDK APP_STL gnustl_shared
- 我在 ndk 中构建文件时遇到错误 android.mk
- Android NDK:用于第三方Java库的静态或共享C++运行时
- 为 Android NDK 编译库
- 如何使用 ndk 加载 Android 版 AAudio API
- 如何将 C 库与 Android NDK (Android Studio 2.3.3) 配合使用
- 如何将静态库链接到NDK Android构建中用作本机库的源
- 使用Xamarin的NDK Android应用程序中的DllNotFoundException
- 使用C++ / NDK(Android开发)将文件复制到照片库
- sql语句插入或替换从java到c++ NDK Android