Android开发中查看未root真机的app数据库

Posted tobetheonlyone

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android开发中查看未root真机的app数据库相关的知识,希望对你有一定的参考价值。

android开发中,如果用到数据库来储存数据,那么难免就要查看数据库中的内容,可是对于未root的真机来说,查看数据库就不是那么容易了,如果仅仅为了查看数据库再把手机root了,有点得不偿失,所以下面的就提供了一中不用root也可查看数据库的方法,供需要的朋友参考。

1. 进入adb所在的目录,打开cmd窗口,输入`adb shell`

2. 继续输入`run-as 应用的包名`

3. 然后输入 `cd databases`

4. 最后输入`ls`查看数据库的名字

截图如下:

技术分享图片

如图,我的数据库名字为 app.db,然后利用以下代码把数据库文件移动到我们可以访问的文件夹下面

private void getDatabaseFiles(){
        //找到文件的路径  /data/data/包名/databases/数据库名称
        File dbFile = new File(Environment.getDataDirectory().getAbsolutePath()+"/data/"+getPackageName()+"/databases/app.db");
        FileInputStream fis = null;
        FileOutputStream fos = null;
        try {
            //文件复制到sd卡中
            fis = new FileInputStream(dbFile);
            fos = new FileOutputStream(Environment.getExternalStorageDirectory().getAbsolutePath()+"/copy.db");
            int len = 0;
            byte[] buffer = new byte[2048];
            while(-1!=(len=fis.read(buffer))){
                fos.write(buffer, 0, len);
            }
            fos.flush();

        } catch (Exception e) {
            e.printStackTrace();
        }finally {
            //关闭数据流
            try {
                if (fos != null) fos.close();
                if (fis != null) fis.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

然后下载一个可以查看数据库文件的工具,就可以查看数据库的内容了。希望可以帮到你~

ps:自己开发了一个制作二维码的小应用,有兴趣的朋友可以试一试~ ^_^ 创意二维码制作

技术分享图片


以上是关于Android开发中查看未root真机的app数据库的主要内容,如果未能解决你的问题,请参考以下文章

iOS 如何查看真机的沙盒(图文教程)

Android Studio无法连接真机的问题?

如何app自动升级 静默安装 android

在xcode中怎么看真机的沙盒

在xcode中怎么看真机的沙盒

android开发怎么把sqlite数据库导入真机