在不root手机的情况下读取Data目录下的文件
来源:互联网 发布:师洋的淘宝骂人截图 编辑:程序博客网 时间:2024/05/18 00:21
如何把/dada/dada/cn.com.fetion/databases/xxx.db 变为可读可写的所有权限:
修改结果:
自己写的应用如何才能获取 /data/data/com.xxx.xxx/database/xxx.db 这个文件的读取权限?
首先机子已Root,应用也获得Root权限,结果执行的时候还是报的 “ 打开数据库失败”。。。
首先机子已Root,应用也获得Root权限,结果执行的时候还是报的 “ 打开数据库失败”。。。
答案:
复制出来再打开 用java的 Runtime.getRuntime().exec执行以下代码
su -
cp /data/data/com.xxx.xxx/database/xxx.db /scard/ xxx.db
然后到scard打开xxx.db再打开。
另一种方法:修改/data/data/com.xxx.xxx/database的读取权限和xxx.db的权限。也是用以上的方法去执行
su -
chomd 777 /data/data/com.xxx.xxx/database
使用adb命令时的错误
如果直接使用adb命令会产生以下错误:
- 127|shell@android:/ $ cd /data
- cd /data
- shell@android:/data $ ls
- ls
- opendir failed, Permission denied
正确使用adb读取data目录下的文件方式
- shell@android:/data $ run-as com.your.package
- run-as com.your.package
- shell@android:/data/data/com.your.package $ cd /data/data/com.your.package
- cd /data/data/com.your.package
- shell@android:/data/data/com.your.package $ ls
- ls
- cache
- databases
- lib
- shared_prefs
- shell@android:/data/data/com.your.package $ cd databases
- cd databases
- shell@android:/data/data/com.your.package/databases $ ls
- yourpackagename.db
- $ cat preferences.db > /mnt/sdcard/yourpackagename.db
参考资料
Read Android Data Folder Without Rooting
如果不通过root权限可读取data/data目录下的文件
public void execMethod(){ String line =""; String args[] = new String[3]; args[0] = "chmod"; args[1] = "777"; args[2] ="/data/data/com.eoemobile/databases/webviewCache.db"; try { Process process = Runtime.getRuntime().exec(args); //get the err line InputStream stderr = process.getErrorStream(); InputStreamReader isrerr = new InputStreamReader(stderr); BufferedReader brerr = new BufferedReader(isrerr); //get the output line InputStream outs = process.getInputStream(); InputStreamReader isrout = new InputStreamReader(outs); BufferedReader brout = new BufferedReader(isrout); String errline = null; String result = ""; // get the whole error message string while ( (line = brerr.readLine()) != null) { result += line; result += "\n"; } if( result != "" ) { // put the result string on the screen } // get the whole standard output string while ( (line = brout.readLine()) != null) { result += line; result += "\n"; } if( result != "" ) { System.out.println(result); } }catch(Throwable t) { t.printStackTrace(); } }
- 在不root手机的情况下读取Data目录下的文件
- 在不root手机的情况下读取Data目录下的文件
- 有没有方法在不root手机的情况下读取Data目录下的文件
- 在不root手机的情况下读取Data目录下的文件
- 在不root手机的情况下读取Data目录下的文件
- 在不root手机的情况下读取Data目录下的文件
- 在不root手机的情况下读取Data目录下的文件
- 在不root手机的情况下读取Data目录下的文件
- 在不root手机的情况下读取Data目录下的文件
- 在不root手机的情况下读取Data目录下的文件
- 在不root手机的情况下读取Data目录下的文件
- Android Studio ——在不root手机的情况下读取Data目录下的文件
- [Android]利用run-as命令在不root情况下读取data下面的数据
- 利用run-as命令在不root情况下读取data下面的sqlite数据
- [Android]利用run-as命令在不root情况下读取data下面的数据
- 利用run-as命令在不root情况下读取data下面的数据
- 利用run-as命令在不root情况下读取data下面的数据
- 利用run-as命令在不root情况下读取data下面的数据
- 【Android常用控件】EditText常用属性【一】:空白提示/文本域/特殊字符/数字类型/等属性设置
- 用javamail发邮件
- 杭电2578
- BIT1048n以内约数最多的数
- 基于arm-linux-gcc的Apache和PHP移植
- 在不root手机的情况下读取Data目录下的文件
- Activity组件之一Service--- BindService & unBindService
- 程序员的自我修养 ch6 可执行文件的装载与进程
- 从Windows上用SSH链接接入Ubuntu
- HADOOP JAVA接口
- BitmapScale9Grid【九宫格类】
- 优化SQL Server数据库查询方法
- Knockoutjs介绍
- platform简单总结