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
尝试一些方法:
- 点击设备窗口中的三angular形图标,然后select“重置adb”。
- closures仿真器,然后重新打开它。
- 你现在可以使用Genymotion,最好的模拟器。