重启应用

private void restartApp() {          final Intent intent = getPackageManager().getLaunchIntentForPackage(getPackageName());          intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);          startActivity(intent);  } 

RunTime重启手机

 case R.id.shutdown_btn3:                try{                    Log.v(TAG, "root Runtime->shutdown");                    //Process proc =Runtime.getRuntime().exec(new String[]{"su","-c","shutdown"});                    Process proc =Runtime.getRuntime().exec(new String[]{"su","-c","reboot -p"});                    proc.waitFor();                }catch(Exception e){                    e.printStackTrace();                }                break;            case R.id.reboot_btn3:                try {                     Log.v(TAG, "root Runtime->reboot");                    Process proc =Runtime.getRuntime().exec(new String[]{"su","-c","reboot "});                    proc.waitFor();                }catch (Exception ex){                    ex.printStackTrace();                }                break;

反射调用重启手机

try {     //获得ServiceManager类     Class ServiceManager = Class.forName("android.os.ServiceManager");     //获得ServiceManager的getService方法     Method getService = ServiceManager.getMethod("getService", java.lang.String.class);     //调用getService获取RemoteService     Object oRemoteService = getService.invoke(null,Context.POWER_SERVICE);     //获得IPowerManager.Stub类     Class cStub = Class.forName("android.os.IPowerManager$Stub");     //获得asInterface方法     Method asInterface = cStub.getMethod("asInterface", android.os.IBinder.class);     //调用asInterface方法获取IPowerManager对象     Object oIPowerManager = asInterface.invoke(null, oRemoteService);     //获得shutdown()方法     Method shutdown = oIPowerManager.getClass().getMethod("shutdown",boolean.class,boolean.class);                        //调用shutdown()方法                        shutdown.invoke(oIPowerManager,false,true);                } catch (Exception e) {                  Log.e(TAG, e.toString(), e);             }

广播重启手机

            //广播方式关机重启            case R.id.shutdown_btn1:                Log.v(TAG, "broadcast->shutdown");                Intent intent = new Intent(Intent.ACTION_REQUEST_SHUTDOWN);                intent.putExtra(Intent.EXTRA_KEY_CONFIRM, false);                //其中false换成true,会弹出是否关机的确认窗口                intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);                startActivity(intent);                break;            case R.id.reboot_btn1:                Log.v(TAG, "broadcast->reboot");                Intent intent2 = new Intent(Intent.ACTION_REBOOT);                intent2.putExtra("nowait", 1);                intent2.putExtra("interval", 1);                intent2.putExtra("window", 0);                sendBroadcast(intent2);                  break;

更多相关文章

  1. Android全屏的两种方法
  2. Android学习笔记4——Activity的生命周期
  3. android最近任务列表,删除某个应用操作
  4. Android日语输入法Simeji使用示例
  5. android监听手机网络连接状态改变的后台服务
  6. Android(安卓)Media Server - MediaPlayer - start (audio)
  7. Android调用第三方App
  8. Android(安卓)Service 之 Bound Services
  9. Android调用相机相册并显示照片在ImageView

随机推荐

  1. Android图片动画播放
  2. 日拱一卒(七)
  3. Android(安卓)WebView 全面干货指南
  4. Android设置通知Notification
  5. Android(安卓)Device Monitor使用
  6. Android(安卓)SDK下载安装及配置教程
  7. 【Android(安卓)界面效果13】关于全屏和
  8. Android(安卓)httpGet 使用 以及使用Hand
  9. Android(安卓)Design Support Library使
  10. Android培训班(15)