使用 USB 线从我的应用程序的 sqlite 数据库中读取数据

read data from my app's sqlite database using USB cable

我想将安装在真实设备上的应用程序的 sqlite 数据库中的数据读取到 windows 计算机中。我想使用 USB 数据线或任何其他方法而不是互联网连接两者 1.这可能吗?是的,在调试模式下,我可以在 eclipse 的 LogCat 中看到数据,但我如何访问这些数据? 2. 你能给我指点一些可以帮助我解决这个问题的文献吗?

将此代码添加到您的主 activity 并重新启动您的 activity。确保此代码已被调用 onc 并设置正确的 sd 卡路径。在 windows 上安装 sqlite 管理器工具并查看您的数据。

        try
        {
        String inFileName = "//data/data/com.needzapp.debug/databases/your_db_name";
        File dbFile = new File(inFileName);
        FileInputStream fis = new FileInputStream(dbFile);
        String outFileName = Environment.getExternalStorageDirectory()+"/NeedzApp_DB";
        //Open the empty db as the output stream
        OutputStream output = new FileOutputStream(outFileName);
        //transfer bytes from the inputfile to the outputfile
        byte[] buffer = new byte[1024];
        int length;
        while ((length = fis.read(buffer))>0){
            output.write(buffer, 0, length);
        }
        //Close the streams
        output.flush();
        output.close();
        fis.close();
    }

    catch (FileNotFoundException e)
    {
        Timber.e("File Not found ", e.toString());
    }
    catch (NullPointerException e)
    {
        Timber.e("NUll pointer" , e.toString());
    }
    catch (Exception e)
    {
        System.out.println("exception on exporting DB");
    }