我想在模拟器的图库中添加图片。但我无法做到这一点。这该怎么做?任何线索!虽然我已经完成了在 stack over flow 中发布的答案,但没有获得成功。
9 回答
检查这个 一旦你的模拟器中有一个虚拟 SD 卡,如果你不习惯mtools
或者你不知道如何在 Linux 上挂载一个环回设备(顺便说一句,这真的很容易),只需使用adb push
上传你的图片。可能的例子:
adb shell mkdir /sdcard/Pictures
adb push mypic.jpg /sdcard/Pictures
您还可以使用 Eclipse 中的 DDMS 工具将文件推送或拉取到模拟器上。在 2.2 模拟器上,我能够使用 DDMS 将一些 .jpg 图像推送到 /mnt/sdcard/DCIM/100ANDRO 文件夹中。然后我必须进入正在运行的模拟器本身,从应用程序屏幕中选择“Dev Tools”,选择“Media Scanner”(或较新版本的 Android 中的“Media Provider”)以让模拟器识别文件,以便它们会显示在媒体库中。
首先要做的是在模拟器的存储中获取图像。为此,您有多种选择。我将在这里列出最常见的选项。但首先需要注意的是需要在模拟器上扫描此媒体。正如费尔比在另一个答案中指出的那样。
把图片放在哪里
将相机图像放在设备上的标准位置(对于我迄今为止测试过的设备)是/mnt/sdcard/DCIM/100ANDRO
.
但是,由于我们无论如何都需要手动扫描,因此您可以将它们/mnt/sdcard/Pictures
放在(模拟的)sdcard 上或任何其他有效路径上。
该/sdcard/
路径已链接到,/mnt/sdcard/
因此也可以使用。我之所以提到这一点,是因为我在另一个答案中看到了这条路径。
如何将图像上传到模拟器
使用亚行
对于铁杆用户,请执行adb push
from 命令行。如果您不知道如何使用 adb,我建议您阅读这篇帮助文章。确保您为系统正确设置了路径并adb devices
返回至少一个设备(如果更多,请在命令中指定设备)。
adb push /path/to/image.jpg /mnt/sdcard/DCIM/100ANDRO
使用日食 (ADT)
您可以通过单击 ADT 中的一些按钮来实现相同的目的。转到 DDMS 透视图,然后在文件资源管理器中选择顶部的图标。查看下面的图片了解详情。
图片链接自 http://cdn.cybersectors.com/
扫描媒体
不要忘记的一个重要步骤是在 Android 模拟器上执行此工具。如果您跳过此操作,图库将保持为空。非常感谢 Felby 指出这一点。
然后我必须进入正在运行的模拟器本身,从应用程序屏幕中选择“Dev Tools”,选择“Media Scanner”(或较新版本的 Android 中的“Media Provider”)以让模拟器识别文件,以便它们会显示在媒体库中。
如果您需要任何图像,只需从模拟器的浏览器访问 google.com,然后根据需要搜索图像并单击图像。打开时选择图像的全尺寸选项,然后按住鼠标几秒钟,这将为您提供保存选项。您也可以在上下文菜单中搜索选项。
希望这会对某人有所帮助。
我可以通过这种方式将图像放入我的 SD 卡中:
从 USB 断开我的手机
使用带有文件夹storage/sdcard而不是/sdcard的adb push命令行,例如
D:\adt-bundle-windows-x86-20131030\sdk\platform-tools>adb push "d:\star.jpg" storage/sdcard
关闭模拟器并再次运行
我检查了Eclipse -> DDMS -> 文件资源管理器选项卡,我看到了storage/sdcard文件夹中的图像
扫描媒体有时可能会停止开发人员工具......如果是这样,使用上图提到的 DDMS 模式将文件推送到 storage/sdcard/DCIM 文件夹,然后重新启动模拟器......
我用过这个,它对我有用 adb push "C:/image.jpg" /mnt/sdcard/DCIM
然后运行媒体提供程序(在开发人员工具中):)
您可能还需要设置写权限。adb shell
mkdir /sdcard/Pictures mount -o rw,remount rootfs / chmod 777 /mnt/sdcard exit
然后尝试复制图像
adb push mypic.jpg /sdcard/Pictures
仍然很烦人,这里有一些说明:
- 使用 adb 将文件复制到模拟器
adb push MyPictures/* /sdcard/Pictures
- 重启设备,让 Android 检查系统是否有新的媒体文件
adb reboot
然后文件应该显示出来!重启超级烦人,但这是我能找到的最可靠的方法。
笔记:
此脚本旨在刷新媒体库,但我无法让它工作:
adb shell "am broadcast -a android.intent.action.MEDIA_SCANNER_SCAN_FILE -d file:///sdcard/Pictures/"