使用 Eclipse DDMS 将大文件推送到模拟器/SD 卡时出现问题
Posted
技术标签:
【中文标题】使用 Eclipse DDMS 将大文件推送到模拟器/SD 卡时出现问题【英文标题】:Problem Pushing Large File to Emulator/SDcard with Eclipse DDMS 【发布时间】:2011-11-23 04:22:10 【问题描述】:我正在使用 Eclipse DDMS 将文件推送到我的 android Emulator sdcard 上。我选择文件并按打开,弹出一个对话框并开始推送文件。在 DDMS 透视图中的“文件资源管理器”视图中,我可以看到 sdcard 目录,并且可以看到我在其中创建的文件。然后在弹出的进度表中途,然后我在控制台窗口中收到此错误:
[2011-09-22 15:15:56] Failed to push the item(s).
[2011-09-22 15:15:56] (null)
然后文件资源管理器完全刷新,文件消失。我知道 sdcard 设置了 1G 的空间,我推送的文件只有 9M。
这是推送期间和失败后的图像。
那么我做错了什么或者我需要做什么来解决这个问题?
【问题讨论】:
尝试从设备列表更新线程...然后再次尝试推送文件... 不,那也没用... 【参考方案1】:无法添加评论,所以我想我必须添加这个作为答案。如果您尝试执行 adb push filename /mnt/sdcard/ftp/new/ 是否有效?
如果这也不起作用,请尝试在 adb 上执行 kill-server 和 start-server ,也许这会起作用。
【讨论】:
使用命令行与 ADB 工具一起工作,但我想让它与 Eclipse 一起工作,因为我讨厌命令行。如果它不起作用,那么在 Eclipse 中使用它有什么意义?也尝试过杀死服务器并重新启动。所以从 DDMS 的角度来看,这更像是一个 Eclipse 错误。 我想是的。我猜尝试关闭和打开日食。这听起来很傻,但有时它往往会解决问题。 是的,重新启动了一切,然后甚至尝试重新启动计算机。看起来它是一个 Eclipse 错误......我尝试超过 9M 的任何东西都有问题并且失败,但像 1.5M 这样更小它可以正常工作。【参考方案2】:这是您修复它的方法。我有一个大约 160M 的大文件,所以发生的事情很可能超时。所以为了解决这个问题,我去了 Eclipse Windows -> Preferences -> Android -> DDMS 然后我将 ADB 连接超时设置为 500000 并选中“启用线程更新”并选中启用堆更新“。然后我可以推送任何文件大小到 sdcard。我读了这个thread后得到了这个想法
在我不需要的某些情况下重新启动 IDE。
【讨论】:
非常感谢!这个答案还解决了我在将 any 文件推送到 SD 时出错的问题。 很高兴我能帮上忙,干杯! 我只是这样做了。起初它不起作用,但在我重新启动我的 IDE(一个加号)后,它就可以正常工作了。干杯!【参考方案3】:您可以使用 PassMark OSMount 将文件上传到 sdcard 映像 - 只需在读/写模式下安装卡映像,它就会在 Windows 中显示为硬盘。也比通过 adb/ddms 上传快得多
【讨论】:
【参考方案4】:我知道这个问题已经得到回答和接受 - 但我用不同的方式解决了这个问题。 有时,我不太确定“为什么”,但 ADB 需要重置。
当您的模拟器运行时,请执行以下操作:
-
转到 DDMS
转到 DDMS 下的设备
选择正在运行的模拟器,使其突出显示。
在设备屏幕的右上角有一个小“向下箭头”。点击它
点击重置 ADB 选项,不要被控制台窗口中的强制退出红色文本吓到。
您现在应该可以将文件推送到系统上,只要您的 SD 卡设置为可以处理的大小。
希望这对某人有所帮助!
【讨论】:
是的,有时 ADB 会处于不稳定状态,唯一的办法就是重置它。 这行得通。虽然它后来给了我一个“无法推送选择:只读文件系统”虽然这完全是一个不相关的问题。 经过数小时的搜索和挠头,您的解决方案解决了我的问题。谢谢你【参考方案5】:只需重新启动您的 Eclipse IDE。它将完美运行。
【讨论】:
如果文件足够大,那么默认超时就会起作用,无论重新启动 IDE 的次数都无法解决此问题。以上是关于使用 Eclipse DDMS 将大文件推送到模拟器/SD 卡时出现问题的主要内容,如果未能解决你的问题,请参考以下文章
Android NDK 创建可执行文件但未将其推送到设备上 (Eclipse)
eclipse中如何使用Git/gitee雷哥pull拉代码,commit提交到本地,Push推送到服务器