ID #58133

Android应用程序请求root访问

前提是手机已经破解获取root权限
This snippet shows how root access can be requested inside an application in order to write a file into a place we do not have permission to access usually. Requesting root access will only work if your phone allows it, or it has been ‘rooted’ (hacked to allow superuser permissions).

  1. Process p;
     
  2. try {
     
  3.    // Preform su to get root privledges
     
  4.    p = Runtime.getRuntime().exec("su");
     

  5.  
  6.    // Attempt to write a file to a root-only
     
  7.    DataOutputStream os = new DataOutputStream(p.getOutputStream());
     
  8.    os.writeBytes("echo \"Do I have root?\" >/system/sd/temporary.txt\n");
     

  9.  
  10.    // Close the terminal
     
  11.    os.writeBytes("exit\n");
     
  12.    os.flush();
     
  13.    try {
     
  14.       p.waitFor();
     
  15.            if (p.exitValue() != 255) {
     
  16.                   // TODO Code to run on success
     
  17.               toastMessage("root");
     
  18.            }
     
  19.            else {
     
  20.                    // TODO Code to run on unsuccessful
     
  21.                    toastMessage("not root");
     
  22.            }
     
  23.    } catch (InterruptedException e) {
     
  24.       // TODO Code to run in interrupted exception
     
  25.            toastMessage("not root");
     
  26.    }
     
  27. } catch (IOException e) {
     
  28.    // TODO Code to run in input/output exception
     
  29.         toastMessage("not root");
     
  30. }

Where my “toastMessage” is just a function which creates a toast to display on the screen. On phones with superuser permissions installed (root access) this will display a dialog asking the user to allow or deny the application permission to have root access


2011-08-18 00:43
阅读:
I'm VC , Just U know Y
本站部分文章来源于互联网,版权归原作者所有。

延伸阅读:

Android JNI实例代码(二)

Android应用闪屏(Splash)

用Android Matrix类实现镜像方法

Android 加密解密

android 学习之发送附件(6种方法