主要思路来自网络!

1、需要源码才能编译

2、修改项目的Android.mk文件,添加

LOCAL_CERTIFICATE := platform

3、AndroidManifest.xml中添加权限

3.1 manifest标签中添加

android:sharedUserId="android.uid.system"

3.2 使用权限

<uses-permission android:name="android.permission.SHUTDOWN"/>

4、java代码

// 创建Intent// 如果是要重启,则使用Intent.ACTION_REBOOTIntent intent = new Intent(Intent.ACTION_REQUEST_SHUTDOWN);// 设置是否需要用户确认,若不需要,可以不设置或设置为falseintent.putExtra(Intent.EXTRA_KEY_CONFIRM, true);// 当作新任务执行intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);// 启动startActivity(intent);

据说还可以使用Broadcast的方式调用,不过我试了一下,窗口是出来了,但一直停在关机的进度条那。不知道是不是机子的问题。

代码如下:

Intent i = new Intent(Intent.ACTION_REBOOT);i.putExtra("nowait", 1);i.putExtra("interval", 1);i.putExtra("window", 0);sendBroadcast(i);

更多相关文章

  1. Linux 下的ADT 权限问题
  2. 【知识点】android代码中设置margin
  3. Android蓝牙通信代码
  4. Android代码规范
  5. Unity3D - AssetBundle 在Android机子上进行读取
  6. android典型代码系列(二十二)------按键使上面的EditText抖动
  7. 用代码创建Android视图
  8. Android中对Group的各种操作示例代码
  9. Android 获取时间实例代码

随机推荐

  1. android中对服务的应用管理
  2. i-jetty环境搭配与编译
  3. Android的调试原理
  4. 【Android 基础】AsynTask 异步任务
  5. Android Virtual Device Manager 创建虚
  6. build/envsetup.sh简记Android系统编译分
  7. Android问题集锦之二十一:No resource fou
  8. DVM, ART, Dalvik, JVM
  9. GifView——Android显示GIF动画
  10. android studio的Gradle一直在sync的办法