Android 理解SU请求
我的应用程序需要请求SU访问(在根设备上),而仅有的示例说明了这一点:Android 理解SU请求,android,su,Android,Su,我的应用程序需要请求SU访问(在根设备上),而仅有的示例说明了这一点: Process p = null; p = Runtime.getRuntime().exec("su"); 这很好,但我如何将p过程与下一步要做的事情联系起来呢?例如,我如何使用该进程打开数据库,以便尝试以root权限打开数据库?请参阅以下讨论: 基本上,您必须在调用exec()方法时指定要执行的内容。因为这很难做到,所以使用系统应用程序确实是最好的方法 对于实际调用,请在代码中执行以下操作: Process p
Process p = null;
p = Runtime.getRuntime().exec("su");
这很好,但我如何将p过程与下一步要做的事情联系起来呢?例如,我如何使用该进程打开数据库,以便尝试以root权限打开数据库?请参阅以下讨论: 基本上,您必须在调用exec()方法时指定要执行的内容。因为这很难做到,所以使用系统应用程序确实是最好的方法 对于实际调用,请在代码中执行以下操作:
Process p = null;
p = Runtime.getRuntime().exec("su sqlite3 your_query");
如果你看这里:
http://www.stealthcopter.com/blog/2010/01/android-requesting-root-access-in-your-app/
您将看到,在创建“p”之后,您可以执行以下操作:DataOutputStream os=newdataoutputstream(p.getOutputStream())例如,我怎样才能对数据库访问做同样的事情呢?是的,你可以做的一件事就是从过程中输入并获得输出。因此,如果您想进行某种数据库查询,可以执行以下操作:DataOutputStream os=newdataoutputstream(p.getOutputStream());writeBytes(“sqlite3一些sql查询”);实际上,只要这样做:进程p=null;p=Runtime.getRuntime().exec(“su-sqlite3-your_查询”);然后从中读取输出流。