重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
必须有root权限的才可以,有的话执行命令行就可以了
创新互联科技有限公司专业互联网基础服务商,为您提供四川电信科技城机房,高防服务器租用,成都IDC机房托管,成都主机托管等互联网服务。
Runtime.getRuntime().exec(new String[]{ "su", "-c", "poweroff -f" });
Runtime.getRuntime().exec(new String[]{ "su", "-c", "reboot" });
手机关机代码:
In frameworks/base/services/java/com/android/server/BatteryService。
Intent intent = new Intent(Intent。ACTION_REQUEST_SHUTDOWN);
intent。putExtra(Intent。EXTRA_KEY_CONFIRM, false);
intent。setFlags(Intent。FLAG_ACTIVITY_NEW_TASK);
mContext。startActivity(intent);
手机充电的预防措施:
给手机充电的最好方式是一有机会就充电,每次充一点电。哪怕只是几分钟也行,零星时间充电不会损害电池。
不要等电池电量完全耗尽后再给手机充电。所谓的深度放电即等电池电量几乎耗尽时再给它充电对电池损耗极大。
手机电池一边输入,一边输出,不仅会耗双倍的电,对电池性能造成损坏,严重的甚至可能会导致手机爆炸。
public class RuntimeTest {
public static void main(String[] args)
{
Runtime rt=Runtime.getRuntime();
try
{
rt.exec("shutdown.exe -s -t 40");
/*40的单位为秒,可以改成你想要的任何数字。
如果是想定时关机,可用这句:rt.exec("at 19:00 shutdown.exe -s");19:00可以换成你想要的时间*/
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
关机代码:
In frameworks/base/services/java/com/android/server/BatteryService.java
Intent intent = new Intent(Intent.ACTION_REQUEST_SHUTDOWN);
intent.putExtra(Intent.EXTRA_KEY_CONFIRM, false);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
mContext.startActivity(intent);
*#*#4636#*#* —显示手机信息、电池信息、电池记录、使用统计数据、WiFi 信息
*#*#7780#*#* –重设为原厂设定,不会删除预设程序,及 SD 卡档案
*2767*3855# –重设为原厂设定,会删除 SD 卡所有档案
*#*#34971539#*#* –显示相机相机韧体版本,或更新相机韧体
*#*#7594#*#* –当长按关机按钮时,会出现一个切换手机模式的窗口,包括:静音模式、飞模式及关机,你可以用以上代码,直接变成关机按钮
*#*#273283*255*663282*#*#* –开启一个能让你备份媒体文件的地方,例如相片、声音及影片等
*#*#197328640#*#* –启动服务模式,可以测试手机部分设置及更改设定WLAN、 GPS 及蓝牙测试的代码
*#*#232339#*#* 或*#*#526#*#* 或 *#*#528#*#* –WLAN 测试
*#*#232338#*#* –显示 WiFi MAC 地址
*#*#1472365#*#* –GPS 测试
*#*#1575#*#* –其它GPS 测试
*#*#232331#*#* –蓝牙测试
*#*#232337#*# –显示蓝牙装置地址
*#*#8255#*#* –启动 GTalk 服务监视器显示手机软件版本的代码
*#*#4986*2650468#*#* – PDA、Phone、 H/W、RFCallDate
*#*#1234#*#* – PDA 及 Phone
*#*#1111#*#* – FTA SW 版本
*#*#2222#*#* – FTA HW 版本
*#*#44336#*#* –PDA 、Phone、 CSC、Build Time、Changelist number 各项硬件测试
*#*#0283#*#* –Packet Loopback
*#*#0*#*#* – LCD 测试
*#*#0673#*#* 或*#*#0289#*#* – Melody 测试
*#*#0842#*#* –装置测试,例如振动、亮度
*#*#2663#*#* –触控屏幕版本
*#*#2664#*#* –触控屏幕测试
*#*#0588#*#* –接近感应器测试
*#*#3264#*#* –内存版本
重启代码:
Intent i = new Intent(Intent.ACTION_REBOOT);
i.putExtra("nowait", 1);
i.putExtra("interval", 1);
i.putExtra("window", 0);
sendBroadcast(i);
import java.util.*;
import java.io.*;
class Shutdown
{
public static void main(String[] args)
{
System.out.println("Shutdown in 10s");
try{
Runtime.getRuntime().exec("cmd /c Shutdown -t 10");
}catch(IOException e){}
}
}
上面这个程序实现你所说的定时10秒关机
至于定时开机...你告诉我怎么在关机的状态下执行我的程序,我就把开机的程序给你写出来.
把时间设置,存到配置文件,Java程序去读取就可以实现;
参考:
public class shutdownSystem extends Thread{
//设置关机时与分
private static shutdownH=10;
private static shutdownM=10;
public void run(){
// 获取当关时与分
int thisH=Calendar .HOUR_OF_DAY;
int thisM=Calendar.MINUTE;
if(shutdownH==thisH shutdownM==thisM){
try {
//关机
java.lang.Runtime.getRuntime().exec( "shutdown -s ");
} catch (java.io.IOException e) {
e.printStackTrace();
}finally{
try{
//间隔一分钟检查一次,确保能检查到关机时间
this.sleep(60000);
}chatch(Exception ex){}
}
}
}
}