想要在代码中实现关机需要apk有系统权限,要在manifest文件添加android:sharedUserId=“android.uid.system”,还要有系统签名。

第一种方式

直接使用adb shell 命令,调用reboot命令来关机

try {Runtime.getRuntime().exec("reboot -p"); //关机
} catch (IOException e) {e.printStackTrace();
}

第二种方式

调用PowerManage中的shutdown方法,但是该方法是隐藏的API,通过反射即可调用,代码如下:

try {PowerManager pManager = (PowerManager) VfiServiceApp.getContext().getSystemService(Context.POWER_SERVICE);if (pManager != null) {Method method = pManager.getClass().getMethod("shutdown", boolean.class, String.class, boolean.class);method.invoke(pManager, false, null, false);}
} catch (Exception e) {e.printStackTrace();
}

第一种直接黑屏,第二种可以设置对话框,都为false的话直接出现关机对话框,不会直接黑屏

Android代码中实现关机相关推荐

  1. android 设置字体大小和不同颜色,Android代码中设置字体大小,字体颜色,显示两种颜色.倒计时效果...

    Android代码中设置字体大小,字体颜色,显示两种颜色 在xml文件中字体大小用的像素 android:id="@+id/uppaid_time" android:layout_ ...

  2. 从Android代码中来记忆23种设计模式

    原文链接:http://www.jianshu.com/p/1a9f571ad7c0 相信大家都曾经下定决心把23种设计模式牢记于心,每次看完之后过一段时间又忘记了~,又得回去看,脑子里唯一依稀记得的 ...

  3. Android代码中实现WAP方式联网

    无论是移动.联通还是电信,都至少提供了两种类型的的APN:WAP方式和NET方式.其中NET方式跟WIFI方式一样,无需任何设置,可自由访问所有类型网站,而WAP方式,需要手机先设置代理服务器和端口号 ...

  4. Android代码中发送Keycode按键

    前言 有时候在代码中需要模拟一些用户操作的按键,例如TV 中遥控器的按键,一些测试脚本的编写.再比如android 手机中虚拟按键,以及悬浮窗中的返回功能,等等.都是模拟发送按键来操作. 这里介绍三种 ...

  5. Android代码中实现 防止手机休眠的处理

    在开发Android程序时,有时候在程序运行的时候,不能让系统休眠,否则有一些运行会停止,因此我们需要设置禁止休眠,有两种方式:一种是添加权限,别一种是代码中设置,建议使用第一种方式,这样,在安装程序 ...

  6. android 动态设置margin,android 代码中设置margin

    场景:Android怎么在java代码中设置margin Android如何在java代码中设置margin 原创帖,转发请注明出处:http://thierry-xing.iteye.com/blo ...

  7. Android代码中setvisibility失效了?

    一.问题现象 最近在开发过程中遇到了在代码中setvisibility失效的问题,在网上查了好多资料都没有解决我的问题 二.发生背景 项目是MVVM架构,使用了databinding,想在tablay ...

  8. android 代码中使用dp,简单谈谈Android中SP与DP的区别

    从一开始写Android程序,就被告知这些常识 一.dp(或者dip device independent pixels) 一种基于屏幕密度的抽象单位.在每英寸160点的显示器上,1dp=1px.不同 ...

  9. Android 代码中动态设置字体大小-TextView.SetTextSize()

    关键代码 - setTextSize(TypedValue.COMPLEX_UNIT_PX,15); //15像素 - setTextSize(TypedValue.COMPLEX_UNIT_SP,1 ...

  10. android设置多个按钮,android代码中设置两个按钮之间位置

    package com.example.helloworld01;//包名 import java.util.ArrayList; import java.util.List; import andr ...

最新文章

  1. openstack安装系列问题:window7 64位安装的virtualBox 只能选择32位的系统安装不能选择64位的系统安装...
  2. php表格自动添加滚动条,jsp中为表格添加水平滚动条的方法
  3. 07 / LiveVideoStack主编观察:走,卷海外去
  4. 用Python和Pygame写游戏-从入门到精通(1)
  5. 【转】wpf从我炫系列2----布局控件的使用(下)
  6. java中 set集合_第8篇 Java中的集合(Set)
  7. 深度学习-Tensorflow1.x之Softmax函数代码实现对比在Tensorflow1.x与 Numpy
  8. 十二月十六日鸿蒙,华为12月16日举行鸿蒙 2.0 手机开发者Beta活动,分享鸿蒙OS2.0设计理念...
  9. 2016百度之星复赛 1003 拍照 优先队列
  10. DEV控件之ChartControl用法
  11. java list加入listview_将卡添加到ListView
  12. Ubuntu 20.04 锐捷客户端安装记录
  13. 从零开始的机器人比赛(一)——项目准备篇
  14. Windows安全加固
  15. ArchiSteamFarm(ASF优秀的Steam挂卡工具) V4.0.3.3绿色版
  16. 前端资源汇总-酷站分享[转载]
  17. 卷积神经网络理解(一):滤波器的意义
  18. 《关于我重装系统后修复VSCode这档事》C++环境配置
  19. 蓝桥杯——单片机设计与开发初学者必备资料
  20. Ubuntu 16.04 Wifi列表是空的(搜索不到Wifi)的解决方法

热门文章

  1. socksCap32+socks2http软件
  2. 中职一年级c语言考试试卷,一年级C语言课后习题答案.doc
  3. Powerpoint 插件制作日记-1
  4. linux环境编程apue和unp,UNIX高级环境编程:源码(apue)下载 编译和运行
  5. EASY UI tree如何根据部分值来选中checkbox
  6. Android常用库整理
  7. 爱普生R230打印机故障大全
  8. 3位格雷码的顺序编码_格雷码编码规则_格雷码有什么规律
  9. dependency 和dependencyManagement 的区别
  10. MATLAB多算法进行图像去雾处理