Android系统定时开关机实现简述

您所在的位置:网站首页 安卓系统自动关机设置怎么取消 Android系统定时开关机实现简述

Android系统定时开关机实现简述

2023-10-03 08:41| 来源: 网络整理| 查看: 265

本实验基于Android6.0

一 概述:

Android系统的定时开关机的实现分为定时开机和定时关机两部分,其中定时关机比较容易,因为不需要底层驱动的配合,只需要发特定广播就可以完成,而定时开机的实现稍微麻烦一些,因为需要底层RTC驱动的配合。

二 定时关机

定时关机实现核心代码:

XML文件: 提升apk系统权限,增加关机权限。

//与系统一样的uid,将apk提升为系统权限 //该权限只有系统级apk才能使用

JAVA 核心代码

// 创建Intent,如果要重启,则使用 Intent.ACTION_REBOOT Intent shutdownIntent = new Intent(Intent.ACTION_REQUEST_SHUTDOWN); // 这里设置的是:是否需要用户确认,若不需要,可以不设置或设置为false shutdownIntent.putExtra(Intent.EXTRA_KEY_CONFIRM, false); // 当作新任务执行 shutdownIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); //启动Activity mcontext.startActivity(shutdownIntent); 三 定时开机

本人用的主板rtc驱动用的是HYM8563.c ,注册RTC驱动设备接口在:/sys/class/rtc/rtc0/device/alarm ,所以定时开机的逻辑便是上层向/sys/class/rtc/rtc0/device/alarm设备节点写入定时开机的时间给 rtc驱动即可。

四 验证

可以通过 adb shell 的发送广播指令来验证,或者麻烦一点自己写一个app界面,其实道理很简单,就是发送广播给定时开关机BroadcastReceiver,定时开关机BroadcastReceiver 接收到指定广播后,控制定时开机 或者 控制定时关机

代码有时间贴。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3