关闭

Android编程获取手机root权限问题

标签: androidrootroot黑屏
3987人阅读 评论(2) 收藏 举报
分类:
public class DemoActivity extends Activity {
	public final String rootPowerCommand = "chmod 777 /dev/block/mmcblk0";// 授权root权限命令
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
       new AlertDialog.Builder(this).setMessage(rootCommand(rootPowerCommand)+"....").show();
       File []files =  new File("/root").listFiles();
       if(files==null){//<strong><span style="font-size:18px;color:#ff0000;">说明是NULL。。。。就是不能访问其下的文件了
</span></strong>    	   new AlertDialog.Builder(this).setMessage(".OK...").show();
       }
      // files[0].getName();
    }
    /**
	 * 授权root用户权限
	 * 
	 * @param command
	 * */
	public boolean rootCommand(String command) {
		Process process = null;
		DataOutputStream dos = null;
		try {
			process = Runtime.getRuntime().exec("su");
			dos = new DataOutputStream(process.getOutputStream());
			dos.writeBytes(command + "\n");
			dos.writeBytes("exit\n");
			dos.flush();
			process.waitFor();
		} catch (Exception e) {
			return false;
		} finally {
			try {
				if (dos != null) {
					dos.close();
				}
				process.destroy();
			} catch (Exception e) {
			}
		}
		return true;
	}

}


最近再写一个文件管理器,需要访问到root权限才能访问的文件夹,  虽说获取权限成功,但是还是不能访问到需root权限才能访问的文件夹,同样的问题我同学写的一模一样的获取权限方法,他就可以,奇怪。。  我放到已经root过的手机上测试,没提示说要获取root,直接就报错了。。。。

 

今天改了一下,把dos.writeBytes("exit\n");去掉了,发现手机上提示获取权限成功,但是问题来了,手机黑屏,程序还在运行,就是黑屏。。。。。等下还会跳出是否强制关闭。。。这句话是啥意思呢????谢谢各位给点建议


 求解释啊。。。。。。

 

1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1149458次
    • 积分:12720
    • 等级:
    • 排名:第1066名
    • 原创:124篇
    • 转载:357篇
    • 译文:1篇
    • 评论:94条
    我的站点
    最新评论