android 系统关机,重启
1.android系统的关机,重启代码位于frameworksasecorejniandroid_os_Power.cpp,里面有
static void android_os_Power_shutdown(JNIEnv *env, jobject clazz)
{/*关机*/
sync();
#ifdef HAVE_ANDROID_OS
reboot(RB_POWER_OFF);
#endif
}
static void android_os_Power_reboot(JNIEnv *env, jobject clazz, jstring reason)
{/*重启*/
sync();
#ifdef HAVE_ANDROID_OS
if (reason == NULL) {
reboot(RB_AUTOBOOT);
} else {
const char *chars = env->GetStringUTFChars(reason, NULL);
__reboot(LINUX_REBOOT_MAGIC1, LINUX_REBOOT_MAGIC2,
LINUX_REBOOT_CMD_RESTART2, (char*) chars);
env->ReleaseStringUTFChars(reason, chars); // In case it fails.
}
jniThrowIOException(env, errno);
#endif
}
2.最终会调用到linux中的sys_reboot,所以我们还是可以做到在android中加入重启功能的;
关机和重启在Linux Kernel中的哪些函数里实现。
reboot的最终实现在arch_reset()函数,它通常定义在arch/arm/mach-xxx/include/mach/system.h里。system.h被ARM kernel的public code应用,因此你需要定义这个头文件,并实现它。
arch_reset的函数原型为
void arch_reset(char mode)
void arch_reset(char mode)
关机需要将pm_power_off这个函数指针指向你自己的实现函数。函数指针是这样定义的
void (*pm_power_off)(void); ......
分享到:
相关推荐
此应用被做成系统用,拥有系统权限,能实现Android系统关机与重启
android 实现关机和 重启的代码;代码比较简洁,非常好用
android代码控制关机重启
设置开机重启 关机 和定时关机代码,仅供参考
自己没事写了一个android关机和重启功能的小demo,供大家交流参考
Android 关机和重启(reboot and shutdown)源码.rar
android定时开关机服务,通过广播设置重启/开关机服务,在国内某大型公司设备中有应用
关机和重启rebootandshutdown源码.zip
android定时关机,重启代码分享;主要用到命令执行
android关机重启自动实现代码
android重启和关机android重启和关机
Android关机和重启(reboot and shutdown)源码.rar
主要介绍了Android实现关机重启的方法,需要的朋友可以参考下
我的Android进阶之旅------>Android实现用Android手机控制PC端的关机和重启的功能(一)PC服务器端 (地址:http://blog.csdn.net/ouyang_peng/article/details/47004617) 我的Android进阶之旅------>Android实现用...
Android源码——关机和重启(reboot and shutdown)源码.zip
版本:2.1 软件语言:中文 软件类别:系统辅助 软件大小:41 KB 适用固件:1.5及更高固件 ...Rebooter关机重启是一款拥有比较简单的重启手机、关闭手机和进入recovery模式的快捷开关,让你手机释放开机键的压力.
android实现关机和重启源码
Android 应用项目开发源码 参考和学习使用
主要介绍了Android实现关机与重启的几种方式(推荐)的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下