Android设备监视器文件资源pipe理器不能与模拟器运行API 24+

所以,就像问题状态一样。 Android设备监视器不显示文件资源pipe理器视图中的任何内容。 这只发生在运行Android API Level 24+的虚拟设备上。

任何解决scheme

在这里输入图像说明

直到Android棒棒糖模拟器,我们可以访问文件资源pipe理器文件夹。 如果模拟器是用棉花糖或更高的创build,我们不能访问文件浏览器。 可能是API级别24+的错误。

这是Android设备监视器中的错误,并已被报告给谷歌。

根据post,这个线程将在补丁发布时更新。

一个临时解决scheme至less可以满足我的需要,就是安装文件pipe理器.apk(我使用Astro文件pipe理器.apk) – 只需将.apk拖放到模拟器窗口即可。 另一个非常有用的工具 – ImDisk – 让我们挂载虚拟设备的sdcard.img。 如果将其安装为只读可popup设备,则可以实时访问虚拟设备文件系统

使用adb命令行工具的解决方法:

 root@mypc ~ $ adb kill-server root@mypc ~ $ adb start-server root@mypc ~ $ adb root 

现在可以使用linux ls命令浏览文件系统:

 root@mypc ~ $ adb shell ls -all / total 3688 drwxr-xr-x 15 root root 0 2017-04-21 11:11 . drwxr-xr-x 15 root root 0 2017-04-21 11:11 .. drwxr-xr-x 29 root root 0 2017-04-21 11:11 acct drwxrwx--- 6 system cache 4096 2017-01-06 12:11 cache lrwxrwxrwx 1 root root 13 1970-01-01 01:00 charger -> /sbin/healthd ... -rw-r--r-- 1 root root 4853 1970-01-01 01:00 ueventd.rc lrwxrwxrwx 1 root root 14 1970-01-01 01:00 vendor -> /system/vendor 

另一个临时解决scheme是使用adbshell

首先,将数据库复制到SD卡

 ./adb shell run-as com.yourapplication cp /data/data/com.yourapplication/databases/yourFileName.db /sdcard 

然后,将数据库文件拖到您的计算机上

 ./adb pull /sdcard/yourFileName.db /Users/yourUserName/Desktop 

这可能与新的Android文件夹权限有关。 正如在另一个答案张贴您可以使用:

 root@mypc ~ $ adb root 

获得对模拟器的根访问权限(不需要重新启动adb)。 然后,您可以使用DDMS文件浏览器或通过shell查看设备上的所有文件夹。 另一种select是等待Android Studio 2.4版本中承诺的新文件浏览器。

如果您之后需要刷新画廊,您可以使用:

 root@mypc ~ $ adb shell "am broadcast -a android.intent.action.MEDIA_MOUNTED -d file:///mnt/sdcard" 

这将模拟安装一个SD卡,这将触发媒体重新扫描。

它是另一种方式。

创build一个bat文件configurationAPP_NAME,例子(com.example.com)

DESTINATION_FOLDER(myProjectFiles)

 cd "C:\Users\USERNAME\AppData\Local\Android\sdk\platform-tools\" adb shell run-as APP_NAME rm -R /sdcard/DESTINATION_FOLDER adb shell run-as APP_NAME cp -R cache/ /sdcard/DESTINATION_FOLDER rmdir C:\Users\USERNAME\Documents\DESTINATION_FOLDER /s /q adb pull /sdcard/DESTINATION_FOLDER C:\Users\USERNAME\Documents\ timeout 5 

configurationbat文件后,双击运行它。 它会做剩下的

我在Android设备监视器中也面临同样的问题。

我们使用的仿真器非常高,像棉花糖25,所以为了完成这个,我们只需要在级别上运行仿真器即Lollipop 22

尝试一些方法:

  1. 点击设备窗口中的三angular形图标,然后select“重置adb”。
  2. closures仿真器,然后重新打开它。
  3. 你现在可以使用Genymotion,最好的模拟器。