引子:
htc机器,在应用中通过命令行调用reboot,提示not permited。
寻遍csdn,xda无解。
经过一次又一次的猜测,测试得出原因出自reboot执行文件,于是打算自己写一个reboot文件,替换系统的。
编译准备:
1、 ndk编译环境(Cygwin)
2、android_reboot.h文件
3、libcutils.so库
编译:
1、把android_reboot.h放在NDK相应的sdk平台的include目录下,比如我的是($android_home\android-ndk-r9d\platforms\android-17\arch-arm\usr\include\)
2、把libcutils.so放在NDK相应的sdk平台的lib目录下,比如我的是($android_home\android-ndk-r9d\platforms\android-17\arch-arm\usr\lib\)
3、利用Cygwin运行ndk-build命令编译reboot。
4、没报错的话,就大功告成了。
验证:
1、adb拷贝到/system/bin目录下。
2、chmod更改可执行权限。
3、执行
代码: