关闭

安卓运用层,实现重启和关机功能

标签: 安卓重启和关机功能
184人阅读 评论(0) 收藏 举报
分类:

       【重启】

【步骤】

1.加属性 

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.harison.adver"
    android:versionCode="4"
    android:sharedUserId="android.uid.system"         ------   *****
    android:versionName="0.2015.04.02.01">


2.加权限

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

3.代码

PowerManager pManager=(PowerManager) getSystemService(Context.POWER_SERVICE);  //重启到fastboot模式
pManager.reboot("");

     【关机】

【步骤】

1.加属性(同上)

2.加权限(同上)

3.代码

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);        
		      }





0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:33483次
    • 积分:893
    • 等级:
    • 排名:千里之外
    • 原创:54篇
    • 转载:10篇
    • 译文:0篇
    • 评论:11条
    最新评论