Bagaimana cara meningkatkan penyimpanan untuk Android Emulator? (INSTALL_FAILED_INSUFFICIENT_STORAGE)


152

Saya mendapatkan ini kadang-kadang (tidak sering) untuk salah satu proyek saya, hanya beberapa kelas
Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE

Bagaimana cara meningkatkan penyimpanan emulator?


2
Saya melihat kesalahan ini cukup sering, bahkan ketika perangkat sedang diinstal memiliki banyak penyimpanan. Perlu diingat bahwa kadang-kadang ketika Anda melihat kesalahan, apa yang dikatakan pesan kesalahan itu tidak benar.
Lance Nanek

1
@ Pentinum10 saya mendapatkan kesalahan yang sama pada 1,5 dan 2,2, periksa pertanyaan ini di mana bantuan Anda diperlukan: stackoverflow.com/questions/3584297/… , tolong bantu saya dan tangkap saya
Paresh Mayani

Jawaban:


127

Memperbarui

Jawaban ini, ketika saya menulis ini, hampir delapan tahun, dan sekitar lima tahun basi. Tapi itu masih (saat saya menulis ini) jawaban "diterima", karena menjawab pertanyaan ketika ditanya.

Jawaban yang lebih baru, yang berlaku untuk perangkat Android Studio yang lebih baru, dapat ditemukan di sini: https://stackoverflow.com/a/35828035/62 - ini adalah jawaban yang bagus dengan tangkapan layar. Jika Anda menggunakan Android Studio, abaikan jawaban Eclipse di bawah ini.

Jawaban Asli berdasarkan Eclipse

Saya mencari jawaban untuk pertanyaan ini, dan tidak puas dengan jawaban di atas. Tapi kemudian saya menemukan jawabannya , jadi ini untuk referensi di masa depan:

Untuk meringkas (dan mengklarifikasi), di Eclipse, buka "Konfigurasi Debug". Anda dapat menemukannya di drop-down di bawah ikon "debug". Pilih "target", dan pilih target emulator yang disukai untuk diluncurkan. Kemudian di bawah "opsi baris perintah emulator tambahan," tambahkan ini:

-partisi-ukuran 1024

Kemudian TUTUP emulator (dan lepaskan semua perangkat), dan klik ikon debug, yang akan meluncurkan emulator yang Anda pilih. Ini penting: Eclipse perlu meluncurkan debugger, bukan AVD.

Itu memperbaiki masalah bagi saya.


8
Perhatikan bahwa "ukuran partisi" dalam megabyte, dan yang umumnya untuk menginstal APK Anda memerlukan setidaknya dua kali lebih banyak ruang disk daripada ukuran APK.
Christopher Orr

5
Catatan lain untuk dibuat: Anda harus mengklik kanan pada proyek yang ingin Anda jalankan di eclipse -> Run-> Run Configuration-> Pilih Project-> Target -> gulir ke bawah-> tambahkan -partisi-ukuran 1024 untuk opsi Em tambahan->> kemudian jalankan proyek dari eclipse
SpoiledTechie.com

4
Google harus menambahkan parameter properti eksplisit ini untuk Android 3.2 atau 4.0. Perbaiki plugin Eclipse AVD sialan
peter_pilgrim

nice find ... memang harus diekspos melalui tooling ADT. Emulator ICS hanya memiliki 60mb secara default! mustahil untuk menginstal APK pada hal di luar kotak.
ddewaele

1
Bagi siapa pun yang melihat jawaban yang diterima ini bertahun-tahun kemudian seperti yang saya lakukan, Anda mungkin ingin melihat stackoverflow.com/a/35828035/62 sebagai gantinya.
Liron Yahdav

90

Di Android Studio

Buka Manajer AVD.

masukkan deskripsi gambar di sini

Klik Edit Ikon untuk mengedit AVD.

masukkan deskripsi gambar di sini

Klik Tampilkan pengaturan Lanjut.

masukkan deskripsi gambar di sini

Ubah Penyimpanan Internal, Ram, ukuran Kartu SD sesuai kebutuhan. Klik Selesai.

masukkan deskripsi gambar di sini

Konfirmasikan munculan dengan mengklik ya.

masukkan deskripsi gambar di sini

Hapus Data pada AVD dan konfirmasikan popup dengan mengklik ya.

masukkan deskripsi gambar di sini

Penting: Setelah menambah ukuran, jika tidak secara otomatis meminta Anda untuk menghapus data, Anda harus melakukannya secara manual dengan membuka menu pull-down AVD dan memilih Wipe Data.

masukkan deskripsi gambar di sini

Sekarang mulai dan gunakan Emulator Anda dengan peningkatan penyimpanan.


7
Mengubah "Penyimpanan Internal" tidak ada artinya bagi saya, sebelum atau setelah membuat AVD. Selalu muncul dengan 300MB dan peringatan ruang rendah.
Travis Christian

3
Sudahkah Anda menghapus data dari menu drop down di AVD manager setelah Anda mengubah ukurannya.
Cijo

1
Saya sudah menghapus AVD, tetapi juga terjadi dengan gambar yang belum diluncurkan yang baru dikonfigurasi. Saya menemukan dalam pertanyaan lain bahwa ini merupakan masalah dengan API tertentu <23.
Travis Christian

OMG - terima kasih untuk ini! Ini satu-satunya solusi yang menurut saya berhasil!
SammyK

2
Ini harus menjadi jawaban yang diterima, dan yang pertama muncul (bukan warisan terkait jawaban Eclipse). Tidak cukup mengubah ukuran dan memulai emulator (bahkan ketika menggunakan Cold Boot Now ). Kuncinya sepertinya adalah perintah Wipe Data . Terima kasih!
Alex Vang

42

Tambahkan yang berikut ini ke avd config.ini

disk.dataPartition.size=1024MB

Beri tahu saya jika ini juga berlaku untuk Anda.

Saya menambahkan di baris Tambahkan Konfigurasi Ukuran Partisi Data
Cuplikan Layar Ruang Penyimpanan AVD ditingkatkan


Tidak berfungsi untuk saya pada gambar 2.3. Saya masih melihat 128MB penyimpanan internal tersedia untuk aplikasi.
Matthias

1
Saya perhatikan bahwa di UI "Edit" AVD Manager, mencoba mengatur nilai ini secara manual akan selalu mengatur ulang ke 0. Mungkin masalah terkait? Mungkin tidak seharusnya diatur pada beberapa versi Android?
Matthias

2
Anda harus memasukkan nilai seperti, 1024MBsaat menggunakan AVD Manager. Anda tidak bisa hanya masuk 1024Butuh sedikit waktu untuk mencari tahu, dan saya telah mengkonfirmasi ini berfungsi
Ronnie

19

Jalankan AVD Manager

Pilih AVD Anda dan klik tombol "Detail ...".

Dalam kasus saya, AVD Manager menetapkan ukuran disk sebagai

disk.dataPartition.size=4000M

Nilai tidak valid ini , disk kira-kira 500MB meskipun angka yang ditentukan.

Buka folder AVR demi jalur di "Rincian AVD".

Edit di config.ini ke

disk.dataPartition.size=4000MB

dan hapus semua file .img.


2
Ini harus menjadi jawaban yang dipilih. Pada versi Android Studio (3.0.1) saat ini, properti pengaturan edit berwarna abu-abu jika Anda menjalankan AVD yang diaktifkan Google Play. Ini berhasil. Saya mengubah perangkat pengujian saya menjadi 2000MB dari 400M, menghapus semua file * .img dan * .qcow2. Menghapus data pada AVD. Kemudian mem-boot-nya, dan memiliki 2000 MB penyimpanan.
MLindsay

@ MLindsay Saya setuju
mwa91

Hanya FYI, saya tidak perlu menghapus * .img atau file lainnya. Hanya mengubah nilai pada config.ini sudah cukup.
Mohib Sheth

Terima kasih! Bekerja untuk kasus saya.
android_dev

10

Saya sedang melakukan instalasi apk:

adb install /home/me/jones_android-arm.apk

Dan saya mendapatkan pesan kesalahan yang memberitahukan hal itu kepada saya

/data/local/tmp/jones_android-arm.apk

terlalu besar. Menggunakan alat sdk dari r15, dan ADT 15 saya dapat menggunakan manajer AVD untuk memanipulasi beberapa pengaturan emulator saya yang ada:

Window-> AVD Manager -> (select you virtual machine) -> Edit

kemudian pergi ke jendela properti Hardware tepat di bawah "Skin:" Saya dapat memilih dengan Hardware: Tombol baru 'Ukuran partisi ideal'. Namun, saya tidak dapat mengatur nilai selain ke '0'. Tanpa gentar, saya pergi ke direktori $ {HOME} /. Android / avd saya. Ada direktori 'MyVm.avd'. Masuk ke direktori itu saya menemukan file 'config.ini'. Ada entri:

disk.dataPartition.size=0

Saya mengatur ini ke:

disk.dataPartition.size=1024

.. lalu kembali ke AVD Manager, memilih MyVm, memilih 'Mulai', memilih untuk menghapus data pengguna, memenangkan dialog berikut, dan dapat menjalankan dan menginstal.


Terakhir kali bekerja dengan baik, tetapi hari ini saya harus menulis disk.dataPartition.size=1024MB, karena 1024dan 1024mtidak bekerja.
Sufian

6

Manajer AVD memiliki opsi "ukuran ideal partisi sistem", coba atur ke 1024MB, atau gunakan opsi peluncuran baris perintah yang melakukan hal yang sama.

fyi, saya hanya mengalami masalah ini dengan gambar emulator 4.0.


Sama disini. Ketika Anda melakukannya, pastikan untuk me-restart emulator dari keadaan bersih dan BUKAN dari snapshot.
Manfred Moser

6

Cukup jalankan emulator dengan baris perintah sebagai berikut:

emulator -avd <your avd name> -partition-size 1024 -wipe-data


3
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.junkfoodian"
android:installLocation="preferExternal"   // this line can work for  Installation error:            //                                             // INSTALL_FAILED_INSUFFICIENT_STORAGE

Tidak yakin mengapa ini ditolak - bekerja untuk saya, jadi pilihlah. :)
Robert

3

Untuk mengubah ukuran penyimpanan emulator Android di Linux:

1) instal qemu

2) Temukan direktori yang berisi file img dari mesin virtual. Sesuatu seperti ~ / .android / avd / .avd dan lakukan cd.

3) Ubah ukuran gambar ext4: yaitu untuk tumbuh dari 500Mb ke 4Gb mengeksekusi

qemu-img resize userdata.img +3.5GB
qemu-img resize userdata-qemu.img +3.5GB

4) menumbuhkan sistem file:

e2fsck -f userdata.img
resize2fs userdata.img
e2fsck -f userdata-qemu.img
resize2fs userdata-qemu.img

5) Untuk gambar kartu sd, opsional: selamatkan data:

mkdir 1
mount -o loop sdcard.img 1
cp -a 1 2
umount 1

6) mengubah ukuran gambar dari 100Mb ke Gb:

qemu-img resize sdcard.img +3.9GB

7) menghasilkan kembali sistem file:

mkfs.vfat sdcard.img

8) opsional: pulihkan data lama:

mount -o loop sdcard.img 1
cp -a 2/* 1
mount -o loop sdcard.img 1 

2

Saya seorang pemula, tapi saya punya masalah saat bermain-main dengan "Hello Grid View". Saya mencoba menggunakan foto saya sendiri, yang semuanya berukuran sangat besar.

Perbaikan cepat adalah mengurangi jumlah foto, sehingga mengurangi ukuran file APK.

Tapi, saya kira pertanyaan tindak lanjut saya untuk orang lain yang mengenai utas ini adalah ini: Bagaimana cara saya melampirkan file besar seperti JPG dan MP3 ke aplikasi dan memastikan mereka menyimpan pada SD Card sehingga APK tetap kecil?


2
Saya rasa saya menemukan jawabannya di sini: developer.android.com/guide/topics/resources/index.html Coba gunakan "aset" alih-alih "sumber daya" untuk elemen besar apa pun. Dari halaman: Sumber daya merupakan bagian integral dari aplikasi Android. Secara umum, ini adalah elemen eksternal yang ingin Anda sertakan dan referensi dalam aplikasi Anda, seperti gambar, audio, video, string teks, tata letak, tema, dll. Setiap aplikasi Android berisi direktori untuk sumber daya (res /) dan direktori untuk aset (aset /).

2

Anda perlu menambah memori virtual emulator

Cara menambah memori virtual emulator

emulator -avd "Emulator Name" -partition-size 2024

setelah itu coba instal apk Anda


2

Perbarui pengaturan Anda di AVD Manager dan mulai perangkat dengan mengaktifkan 'Hapus data pengguna'. Ini berhasil untuk saya.


1
Di antarmuka AVD baru, klik kanan pada baris emulator, lalu pilih wipe data pengguna setelah Anda mengubah penyimpanan internal.
Tiago Zortéa De Conto

1

Saya kira Anda harus me-restart emulator dengan "emulator -wipe-data -avd YourAvdName" atau centang "Wipe User Data" dalam menjalankan konfigurasi jika Anda menggunakan Eclipse.

Saya menghadapi masalah yang sama sekarang.


0

Satu-satunya saat saya melihat ini terjadi adalah ketika filesystem host pada dasarnya kehabisan ruang. Apakah Anda memiliki banyak ruang kosong pada sistem file tempat sistem file VM disimpan?


Saya punya banyak ruang di hard disk 13GB gratis.
Pentium10

0

Jelas bukan jawaban yang tepat, tetapi ini adalah petunjuk kecil.

Jika Anda ingin memanfaatkan file statis di Aplikasi Anda. Anda harus menempatkan mereka sebagai sumber daya atau aset. Tapi, jika Anda memiliki masalah memori ingin membuat APK Anda kecil, maka Anda perlu mengubah desain App Anda sedemikian rupa sehingga,

alih-alih menempatkannya sebagai sumber daya, saat menjalankan Aplikasi Anda (setelah instalasi) Anda dapat mengambil file (file yang berbeda karena pengguna mungkin tidak menyimpan file yang Anda butuhkan) dari SD Card. Untuk U ini dapat menggunakan ContentResolver untuk mengambil audio, file gambar pada pilihan pengguna.

Dengan ini, Anda dapat memberi pengguna fitur lain seperti ia dapat memuat file audio / gambar ke aplikasi sesuai pilihannya sendiri.


0

Anda dapat memulai satu ketika memilih satu item dari "perangkat virtual" pohon kiri dalam dialog manajer AVD pada platform gerhana, UI mulai memiliki opsi "Hapus Data Pengguna"


0

Pendekatan berikut berhasil bagi saya

  1. Arahkan ke folder SDK / tools android Anda di jendela terminal (jika Anda tidak menambahkan jalur untuk itu)

  2. Pastikan perangkat virtual yang Anda rencanakan untuk dibersihkan dimatikan.

  3. Jalankan perintah "./emulator -wipe-data -avd YourAvdName" di mana YourAvdName adalah nama perangkat android virtual Anda


-2

Coba pilih proyek -> bersih. Pembersihan sederhana dapat memperbaikinya.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.