Cách giải quyết: Không thể đẩy lựa chọn: Hết bộ nhớ


11

Tôi Tạo một bài viết trong Stack tràn . Nhưng khi tôi tìm thấy trang web này, tôi quyết định đặt câu hỏi tương tự ở đây, bởi vì tôi vẫn cần sự giúp đỡ của bạn.

Tôi đã thực hiện các bước sau:

  1. Khởi chạy Eclipse
  2. Chuyển đến: Cửa sổ -> Mở phối cảnh -> Khác ...
  3. Chọn DDMS từ hộp thoại đã mở
  4. Chọn tab " Trình thám hiểm tệp ".
  5. Nhấn " Đẩy tập tin vào thiết bị " và chọn thư viện mà tôi muốn đẩy.

    Không thể đẩy lựa chọn: Hệ thống tệp chỉ đọc

  6. Thu nhỏ tất cả các cửa sổ đã mở và mở Dòng lệnh
  7. Viết: cd C: \ android \ android-sdk-windows \ platform-tools nhập
  8. Viết: abd remount nhập

    Bạn sẽ thấy remount thành công

  9. Tối đa hóa Eclipse và thử bước 5.

    Không thể đẩy lựa chọn: Hết bộ nhớ

Lỗi xuất hiện! Phải làm gì để giải quyết vấn đề này ... Xin hãy giúp đỡ.

THÊM

1) Khi tôi viết 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 bắt đầu bằng: #


2
Câu hỏi phát triển được coi là lạc đề ở đây theo Câu hỏi thường gặp của chúng tôi .
năm11

Tôi đã đọc từ "Nhật thực" vì vậy tôi đã bỏ phiếu để đóng, nhưng bây giờ tôi đã đọc phần còn lại của bài đăng và bài đăng được liên kết, tôi bắt đầu nghĩ rằng đây là một ví dụ hay về các câu hỏi bạn nhận được khi phát triển ứng dụng không thực sự là câu hỏi phát triển. Tôi không thể rút lại phiếu bầu gần của mình, nhưng tôi có thể cảnh báo người khác không bỏ phiếu quá nhanh.
Lie Ryan

Tôi đồng ý với @Lie rằng đây là một khu vực màu xám. Tôi nói điều này nên mở cho bây giờ.
ale

@ViTo Brothers Apoyan: Tôi có hai câu hỏi 1) Bạn có đầu ra nào khi thực hiện adb shell mount(điều này sẽ cung cấp cho bạn tất cả các hệ thống tệp được gắn trong thiết bị và các tùy chọn gắn kết của chúng)? 2) khi bạn thực hiện adb shell, dấu nhắc shell bắt đầu bằng #(cho biết bạn đã root) hay $(cho biết bạn chưa root)?
Lie Ryan

bạn cũng đã gắn thẻ câu hỏi này với trình giả lập android-x86, android-x86 ! = android chạy trên máy chủ x86. Bạn có thực sự sử dụng android-x86 hay chỉ là trình giả lập thông thường?
Lie Ryan

Câu trả lời:


12

Khởi chạy trình giả lập từ dòng lệnh để bạn có thể chỉ định /systemkích thước phân vùng bằng -partition-size <MB>tùy chọn. Ví dụ: tôi sử dụng điều này để khởi chạy trình giả lập chạy Android 1.6 với /systemphân vùng 512 MB:

emulator -avd Donut -partition-size 512

... Trong đó "Donut" là bất cứ thứ gì bạn đặt tên cho AVD của mình (bạn có thể kiểm tra trình quản lý AVD của Eclipse nếu bạn cần). Các emulatornhị phân phải ở trong bạn tools/thư mục trong SDK của bạn cài đặt, mà đối với bạn dường như là C:\android\android-sdk-windows\tools, vì vậy hãy chắc chắn rằng bạn cdvào thư mục đó đầu tiên (hoặc thêm nó vào hệ thống của bạn%Path% ).

Eclipse có thể không nhận trình giả lập ngay lập tức hoặc có thể nhận ra nó và sau đó hủy kết nối. Nếu một trong những điều đó xảy ra, hãy nhấp vào menu xem trên tab Thiết bị (mũi tên nhỏ bên cạnh nút thu nhỏ) và chọn "Đặt lại adb" để lấy lại kết nối.

Một khi nó xuất hiện trong thiết bị của bạn, hãy làm những gì bạn đang cố gắng làm trước đó. Chạy adb remountđể lấy /systemphân vùng ở chế độ đọc-ghi, sau đó sử dụng Eclipse để đẩy tệp bất cứ nơi nào bạn muốn. Tôi đã thử nghiệm với một vài tệp ngẫu nhiên một phút trước và có thể đẩy chúng đến /system/xbinmà không gặp rắc rối nào.

Để tham khảo, đây là kích thước phân vùng và sử dụng /systemtrên trình giả lập Donut của tôi khi tôi chỉ định phân vùng 512 MB:

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

Nhưng đây là giao diện nếu tôi khởi chạy mà không chỉ định kích thước:

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

Ngoài ra, bạn có thể đặt các tùy chọn dòng lệnh trong cấu hình chạy ứng dụng của mình thông qua Eclipse nếu bạn muốn. Đi vào phối cảnh Java của bạn, sau đó chọn Run->Run Configurationstừ thanh menu. Chọn ứng dụng của bạn trong khung bên trái, rồi chọn tab "Target". Ở dưới cùng là một hộp văn bản có nhãn "Tùy chọn dòng lệnh giả lập bổ sung" và bạn có thể thêm -partition-size <MBs>vào hộp văn bản đó để trình giả lập khởi chạy khi bạn chạy ứng dụng của bạn sẽ có /systemphân vùng lớn hơn .

Lưu ý: Bạn có thể phải thêm -no-snapstoragehoặc các tùy chọn khác, để vô hiệu hóa tải snaphot hiện có, vào dòng lệnh. Nó đã không làm việc mà không có nó cho tôi.


Cảm ơn bạn rất phù hợp !!! Bạn giải quyết vấn đề của tôi !!! cảm ơn rất nhiều !!!!!!!
ViTo Brothers Apoyan

0

Cách dễ dàng: khởi động lại điện thoại của bạn ở chế độ Recovery, hơn là mount System. Bây giờ bạn có thể đẩy tập tin của bạn mà không có vấn đề.


Tôi cho rằng bạn đã bỏ lỡ dòng /dev/block/mtdblock0 /system yaffs2 rw 0 0trong câu hỏi? Vì vậy, những gì nên thay đổi khi bạn gắn kết nó từ phục hồi? Đầy đủ, bạn không có thêm không gian trên hệ thống tệp đầy đủ bằng cách gắn "từ nơi khác".
Izzy

-2

Cách giải quyết: Không thể đẩy lựa chọn: Hết bộ nhớ

Trong khi tạo thiết bị ảo Android mới (AVD) .. trên tab SD CARD, nhập một số giá trị (100) bằng MB.

Thực sự, nó làm việc cho tôi !!


1
Điều này LAF không đúng. Tạo thẻ SD ảo sẽ không giúp bạn đẩy các tệp vào /systemphân vùng như câu hỏi. Chúng là khu vực lưu trữ hoàn toàn không liên quan.
eldarerathis
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.