解决方法:“无法推送选择:内存不足”


11

我在Stackoverflow中创建了一篇文章。但是,当我找到该站点时,我决定在这里提出同样的问题,因为我仍然需要您的帮助。

我已完成以下步骤:

  1. 启动Eclipse
  2. 转到:窗口->打开透视图->其他...
  3. 从打开的对话框中选择DDMS
  4. 选择“ 文件资源管理器 ”标签。
  5. 按“ 将文件推送到设备上 ”,然后选择我要推送的库。

    无法推送选择:只读文件系统

  6. 最小化所有打开的窗口并打开命令行
  7. 写入:cd C:\ android \ android-sdk-windows \ platform-tools输入
  8. 写:abd remount输入

    您将看到重新安装成功

  9. 最大化Eclipse并尝试步骤5。

    无法推送选择:内存不足

出现错误!解决该问题的方法...请帮助。

添加

1)当我写ADB SHELL MOUNT时:

rootfs / rootfs ro 0 0 
tmpfs /dev tmpfs rw,mode=755 0 0
devpts /dev/pts devpts rw,mode=600 0 0
proc /proc proc rw 0 0
sysfs /sys sysfs rw 0 0 
none /acct cgroup rw,cpuacct 0 0 
tmpfs /mnt/asec tmpfs rw,mode=755,gid=1000 0 0 
tmpfs /mnt/obb tmpfs rw,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,cpu 0 0
/dev/block/mtdblock0 /system yaffs2 rw 0 0 
/dev/block/mtdblock1 /data yaffs2 rw,nosuid,nodev 0 0
/dev/block/vold/179:0 /mnt/sdcard vfat rw,dirsync,nosuid,nodev,noexec,uid=1000,gid=1015,fmask=0702,dmask=0702,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0 
/dev/block/vold/179:0 /mnt/secure/asec vfat rw,dirsync,nosuid,nodev,noexec,uid=1000,gid=1015,fmask=0702,dmask=0702,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
tmpfs /mnt/sdcard/.android_secure tmpfs ro,size=0k,mode=000 0 0

2)Shel Prompt开头为:#


2
根据我们的常见问题解答,此处存在开发问题。
newuser

我读了“ Eclipse”一词,所以我投票关闭了它,但是现在我阅读了本文的其余部分和链接的文章,我开始认为这是开发应用程序时遇到的问题的一个很好的例子。并不是真正的发展问题。我无法撤回我的结束投票,但是我可以警告其他人不要这么快就结束投票。
Lie Ryan

我同意@Lie,这是一个灰色区域。我说这应该暂时保持开放。
ale

@ViTo Brothers Apoyan:我有两个问题:1)您执行操作时adb shell mount会得到什么输出(这将为您提供设备中安装的所有文件系统及其安装选项)?2)当您这样做时adb shell,shell提示符是否以#(表示您是root)或$(表示您不是root)开头?
Lie Ryan

您也用x86主机上运行的android-x86,android-x86!= android模拟器标记了这个问题。您实际上是在使用android-x86还是常规模拟器?
Lie Ryan

Answers:


12

从命令行启动仿真器,以便您可以/system使用该-partition-size <MB>选项指定分区大小。例如,我用它来启动一个运行Android 1.6且/system分区为512 MB 的模拟器:

emulator -avd Donut -partition-size 512

...其中“ Doughnut”就是您为AVD命名的名称(如果需要,可以签入Eclipse的AVD管理器)。该emulator二进制文件应该在你tools/的SDK中的目录中安装,这对于你似乎是C:\android\android-sdk-windows\tools,所以一定要cd到该目录中第一个(或将其添加到您的系统%Path%)。

Eclipse可能不会立即启动仿真器,或者可能会识别出它并断开连接。如果发生任何一种情况,请单击“设备”选项卡上的视图菜单(“最小化”按钮旁边的小箭头),然后选择“重置adb”以恢复连接。

一旦它出现在您的设备中,请执行您先前尝试做的事情。运行adb remount以使该/system分区处于读写模式,然后使用Eclipse将文件推送到所需位置。一分钟前,我对几个随机文件进行了测试,并且能够轻松地将它们推送到文件中/system/xbin

作为参考,以下是/system我指定512 MB分区时在Donut仿真器上的分区大小和使用:

> adb shell df
...
/system: 508416K total, 61332K used, 447084K available (block size 4096)
...

但是,如果我不指定大小启动就可以看到它:

> adb shell df
...
/system: 65536K total, 61204K used, 4332K available (block size 4096)
...

此外,如果需要,您可以通过Eclipse在应用程序的运行配置中设置命令行选项。进入Java透视图,然后Run->Run Configurations从菜单栏中选择。在左窗格中选择您的应用程序,然后选择“目标”选项卡。底部是一个标有“其他仿真器命令行选项”的文本框,您可以将其添加-partition-size <MBs>到该文本框,以便在运行应用程序时启动的仿真器具有更大的/system分区。

注意:您可能还必须添加-no-snapstorage或其他选项,以禁止在命令行中加载现有的快照。没有我,它就无法工作。


谢谢你非常匹配!你解决了我的问题!非常感谢 !!!!!!!
维托兄弟阿波扬

0

简单的方法:在挂载模式下重启手机,而不是挂载系统。现在,您可以毫无问题地推送文件了。


我认为您错过/dev/block/mtdblock0 /system yaffs2 rw 0 0了问题中的那一行?那么,从恢复中挂载它应该改变什么呢?完整已满,通过“从其他位置”安装完整文件系统不会获得更多空间。
伊兹

-2

解决方法:“无法推送选择:内存不足”

在SD CARD选项卡上创建新的android虚拟设备(AVD)时,以MB为单位键入一些值(100)。

真的,它对我有用!


1
这是不正确的。创建虚拟SD卡并不能帮助您/system按照问题将文件推送到分区。它们是完全无关的存储区域。
eldarerathis 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.