如何使用Android Studio从emulator中的data文件夹访问SQLite数据库?

如何使用Android Studio从emulator中的data文件夹访问SQLite数据库?,android,database,sqlite,android-studio,Android,Database,Sqlite,Android Studio,我试图从Android Studio中的Android设备管理器中的data文件夹访问SQLite数据库。我正在使用Nexus_4_API_24模拟器。当我尝试打开数据文件夹时,没有任何东西会像是空的一样打开。我在地狱里搜寻,仍然找不到问题的答案 谢谢你可以把你的数据库复制到你知道你有权访问的地方。如果只有内存可用,则应用程序可以访问文件夹/data/data/yourapp/yourdb.sql。因此,除非您的文件浏览器具有访问此文件夹的特定权限,否则最好将其复制到其他地方。 我知道你可以用这

我试图从Android Studio中的Android设备管理器中的data文件夹访问SQLite数据库。我正在使用Nexus_4_API_24模拟器。当我尝试打开数据文件夹时,没有任何东西会像是空的一样打开。我在地狱里搜寻,仍然找不到问题的答案


谢谢

你可以把你的数据库复制到你知道你有权访问的地方。如果只有内存可用,则应用程序可以访问文件夹/data/data/yourapp/yourdb.sql。因此,除非您的文件浏览器具有访问此文件夹的特定权限,否则最好将其复制到其他地方。 我知道你可以用这个复制文件,但从来没有用数据库测试过

     public static void copyFile(String src, String dst) throws IOException
{
    FileChannel inChannel = new FileInputStream(src).getChannel();
    FileChannel outChannel = new FileOutputStream(dst).getChannel();
    try
    {
        inChannel.transferTo(0, inChannel.size(), outChannel);
    }
    finally
    {
        if (inChannel != null)
            inChannel.close();
        if (outChannel != null)
            outChannel.close();
    }
}
src和dst类似于:

      src=mContext.getFilesDir().getAbsolutePath()+"/yourdbname.sql";
      dst=mContext.getExternalFilesDir(Environment.DIRECTORY_DOCUMENTS).getAbsolutePath()+"/yourdbname.sql";
然后在文件浏览器jsut中转到sdcard/Android/yourapp/Documents/yourdb.sql


希望我能回答这个问题,并能帮助您

听起来您的数据库不存在它确实存在,因为我可以向其中添加记录,并从中填充、更新和删除。我听说了一些关于没有正确权限的事情?你是说Android设备监视器吗?你在看哪个数据文件夹?