在模拟器上,我从谷歌下载了一张图片。我可以在模拟器上找到该图像,但我不知道该图像的文件位置是什么。要调试我的应用程序,我需要知道该图像在哪里。如何获取图像的完整路径?
来自 AVD 文档:
默认情况下,Android 工具会在
(在 Linux/Mac 上)、~/.android/avd/
(在 Windows XP 上)以及C:\Documents and Settings\<user>\.android\
(在 Windows 7 和 Vista 上)中创建 AVD 目录。C:\Users\<user>\.android\
更新 (2020-02-22):此措辞不再出现在当前文档页面上,但 Windows 8 和 10 上的位置似乎相同 (
C:\Users\<user>\.android\
)。
系统镜像下载于 [ {android_version_home_dir}/sdk/system-images/{android-version-number}/system.img> ]
并且 avd 在 C:\Users\.android vd\ (windows) 或 ~/.android/avd/ (linux/mac) 中创建
这似乎对我有用:
String path = Environment.getExternalStorageDirectory().getPath();
String myJpgPath = path + "/Download/dog-best-friend-1.jpg";
在 Windows 上:->
C:\Users\yourUser\Documents\AndroidStudio\DeviceExplorer\Pixel_2_API_30 [emulator-5554]\data\data\com.yourpackage\files
模拟器名称后,您可以选择代码中的路径。
如果您的图像存储在模拟器上,那么您可以使用文件 Explore 找到该图像
首先启动模拟器,然后:
打开文件资源管理器并转到
mnt/sdcard/Download
,如果已下载,您将在此处找到您的图像。
在 Eclipse 中打开文件浏览:
window/show view/other/File Explore
要找到确切的路径,请打开模拟器,转到“照片”,然后单击照片(如果有),然后单击“i”(了解信息)。您可以在其中看到设备上的确切路径。要动态访问这些文件,请尝试:
String path = Environment.getExternalStorageDirectory().getPath();
String pathPhotos = path2 +"/Download";
File[] fileArr = new File(pathPhotos).listFiles();
for(int i = 0; i < fileArr.length; i++) {
Log.d("fileName12", " " + fileArr[i].getPath());
}
如果 listFiles 返回 null,您必须添加:
使用权限 *android:name="android.permission.READ_EXTERNAL_STORAGE" />
并更改模拟器上的设置 -> 设置 -> 应用程序 -> 应用程序权限 -> 存储 -> 你的应用程序名称 -> 打开
在 Windows 中 ---> C:\Documents and Settings
我在(Windows 10)找到它: C:\Users\YourUserName\AppData\Local\Android\Sdk\system-images