บางครั้งฉันได้รับสิ่งนี้ (ไม่บ่อย) สำหรับหนึ่งในโปรเจ็กต์ของฉันสองสามชั้นเท่านั้น
Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE
ฉันจะเพิ่มที่เก็บข้อมูลจำลองได้อย่างไร
บางครั้งฉันได้รับสิ่งนี้ (ไม่บ่อย) สำหรับหนึ่งในโปรเจ็กต์ของฉันสองสามชั้นเท่านั้น
Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE
ฉันจะเพิ่มที่เก็บข้อมูลจำลองได้อย่างไร
คำตอบ:
คำตอบนี้คือเมื่อฉันเขียนสิ่งนี้อายุเกือบแปดปีและค้างอยู่ประมาณห้าปี แต่มันยังคง (ตามที่ฉันเขียนนี้) คำตอบ "ยอมรับ" เพราะมันตอบคำถามเมื่อมันถูกถาม
คำตอบที่ใหม่กว่าที่ใช้กับเครื่องมือ Android Studio รุ่นใหม่สามารถดูได้ที่นี่: https://stackoverflow.com/a/35828035/62 - เป็นคำตอบที่ดีสำหรับภาพหน้าจอ หากคุณใช้ Android Studio ให้ข้ามคำตอบ Eclipse ด้านล่าง
ฉันค้นหาคำตอบสำหรับคำถามนี้และไม่พอใจกับคำตอบข้างต้น แต่แล้วฉันก็พบคำตอบดังนั้นนี่คือสำหรับการอ้างอิงในอนาคต:
ในการสรุป (และชี้แจง) ใน Eclipse ให้ไปที่ "Debug Configuration" คุณสามารถค้นหาได้ในเมนูแบบเลื่อนลงใต้ไอคอน "debug" เลือก "เป้าหมาย" และเลือกเป้าหมายจำลองที่ต้องการเปิดใช้ จากนั้นภายใต้ "ตัวเลือกบรรทัดคำสั่งตัวจำลองเพิ่มเติม" เพิ่มสิ่งนี้:
- พาร์ทิชันขนาด 1024
จากนั้นปิดอีมูเลเตอร์ (และลบอุปกรณ์ใด ๆ ) แล้วคลิกไอคอน debug ซึ่งจะเปิดอีมูเลเตอร์ที่คุณเลือก สิ่งนี้มีความสำคัญ: Eclipse ต้องเรียกใช้ดีบักเกอร์ไม่ใช่ AVD
ที่แก้ไขปัญหาสำหรับฉัน
เปิดตัวจัดการ AVD
คลิกที่ไอคอนแก้ไขเพื่อแก้ไข AVD
คลิกแสดงการตั้งค่าขั้นสูง
เปลี่ยน Internal Storage, Ram, SD Card ขนาดเท่าที่จำเป็น คลิกเสร็จสิ้น
ยืนยันป๊อปอัพโดยคลิกใช่
ล้างข้อมูลใน AVD และยืนยันป๊อปอัปโดยคลิกใช่
สำคัญ:หลังจากเพิ่มขนาดแล้วหากไม่ได้ขอให้คุณลบข้อมูลโดยอัตโนมัติคุณต้องทำด้วยตนเองโดยเปิดเมนูแบบเลื่อนลงของ AVD แล้วเลือก Wipe Data
ตอนนี้เริ่มและใช้ Emulator ของคุณด้วยพื้นที่เก็บข้อมูลเพิ่ม
เพิ่มสิ่งต่อไปนี้ใน avd config.ini
disk.dataPartition.size=1024MB
แจ้งให้เราทราบว่าสิ่งนี้เหมาะกับคุณหรือไม่
ฉันเพิ่มในบรรทัด
1024MB
เมื่อใช้ AVD Manager คุณไม่สามารถเข้า1024
มาหาได้ซักพักสักครู่และฉันได้ยืนยันงานนี้แล้ว
เรียกใช้ตัวจัดการ AVD
เลือก AVD ของคุณแล้วคลิกปุ่ม "รายละเอียด ... "
ในกรณีของฉันผู้จัดการ AVD ตั้งขนาดดิสก์เป็น
disk.dataPartition.size=4000M
ค่าที่ไม่ถูกต้องนี้ดิสก์มีขนาดประมาณ 500MB แม้จะมีการระบุหมายเลขไว้
ไปที่โฟลเดอร์ AVR โดยเส้นทางใน "รายละเอียด AVD"
แก้ไขใน config.ini เป็น
disk.dataPartition.size=4000MB
และลบไฟล์. img ทั้งหมด
ฉันกำลังติดตั้ง apk:
adb install /home/me/jones_android-arm.apk
และฉันได้รับข้อความแสดงข้อผิดพลาดบอกฉันว่า
/data/local/tmp/jones_android-arm.apk
ใหญ่เกินไป การใช้เครื่องมือ sdk จาก r15 และ ADT 15 ฉันสามารถใช้ตัวจัดการ AVD เพื่อจัดการการตั้งค่าตัวจำลองที่มีอยู่ของฉัน:
Window-> AVD Manager -> (select you virtual machine) -> Edit
จากนั้นไปที่หน้าต่างคุณสมบัติฮาร์ดแวร์ด้านล่าง "ผิวหนัง:" ฉันสามารถเลือกได้ด้วยฮาร์ดแวร์: ปุ่มใหม่ 'ขนาดที่เหมาะสมของพาร์ติชัน' อย่างไรก็ตามฉันไม่สามารถตั้งค่าอื่นที่ไม่ใช่ '0' ไม่สะทกสะท้านฉันไปที่ไดเรกทอรี $ {HOME} /. android / avd มีไดเรกทอรี 'MyVm.avd' อยู่ ไปที่ไดเรกทอรีนั้นฉันพบไฟล์ 'config.ini' มีรายการ:
disk.dataPartition.size=0
ฉันตั้งค่านี้เป็น:
disk.dataPartition.size=1024
.. จากนั้นกลับไปที่ผู้จัดการ AVD เลือก MyVm เลือก 'เริ่ม' เลือกที่จะล้างข้อมูลผู้ใช้ชนะกล่องโต้ตอบต่อไปนี้และสามารถเรียกใช้และติดตั้งได้
disk.dataPartition.size=1024MB
ตั้งแต่1024
และ1024m
ไม่ทำงาน
avd manager มีตัวเลือก "ขนาดที่เหมาะสมของพาร์ติชันระบบ" ลองตั้งค่าที่ 1024MB หรือใช้ตัวเลือกการเปิดใช้ commandline ที่ทำเช่นเดียวกัน
ถ้าฉันพบปัญหานี้กับอิมเมจ 4.0 emulator เท่านั้น
เพียงเริ่มต้นโปรแกรมจำลองโดยบรรทัดคำสั่งดังต่อไปนี้:
emulator -avd <your avd name> -partition-size 1024 -wipe-data
ปัญหานี้มาพร้อมกับ Android 1.5 .. ลอง 2.0 หรือ 2.1 หรือ 2.2
<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
หากต้องการปรับขนาดที่เก็บของตัวจำลอง Android ใน Linux:
1) ติดตั้ง qemu
2) ค้นหาไดเรกทอรีที่มีไฟล์ img ของเครื่องเสมือน มีบางอย่างเช่น ~ / .android / avd / .avd และ cd อยู่
3) ปรับขนาดภาพ ext4: เช่นสำหรับการเติบโตจาก 500Mb ไปเป็น 4Gb execute
qemu-img resize userdata.img +3.5GB
qemu-img resize userdata-qemu.img +3.5GB
4) ขยายระบบแฟ้ม:
e2fsck -f userdata.img
resize2fs userdata.img
e2fsck -f userdata-qemu.img
resize2fs userdata-qemu.img
5) สำหรับภาพการ์ด sd ตัวเลือก: ช่วยเหลือข้อมูล:
mkdir 1
mount -o loop sdcard.img 1
cp -a 1 2
umount 1
6) ปรับขนาดภาพจาก 100Mb เป็น Gb:
qemu-img resize sdcard.img +3.9GB
7) สร้างระบบไฟล์ขึ้นใหม่:
mkfs.vfat sdcard.img
8) ตัวเลือก: กู้คืนข้อมูลเก่า:
mount -o loop sdcard.img 1
cp -a 2/* 1
mount -o loop sdcard.img 1
ฉันเป็นผู้เริ่มต้น แต่ฉันมีปัญหานั้นในขณะที่เล่นกับ "Hello Grid View" ฉันพยายามใช้รูปถ่ายของตัวเองซึ่งมีขนาดใหญ่มากในขนาดไฟล์
การแก้ไขอย่างรวดเร็วคือการลดจำนวนรูปภาพซึ่งเป็นการลดขนาดของไฟล์ APK
แต่ฉันเดาคำถามติดตามของฉันสำหรับคนอื่น ๆ ที่เข้ามาที่เธรดนี้: ฉันจะแนบไฟล์ขนาดใหญ่เช่น JPG และ MP3 ไปยังแอพได้อย่างไร
คุณต้องเพิ่มหน่วยความจำเสมือนของเครื่องจำลอง
วิธีเพิ่มหน่วยความจำเสมือนของอีมูเลเตอร์
emulator -avd "ชื่อตัวจำลอง" - ขนาดพาร์ติชัน 2024
หลังจากนั้นลองติดตั้ง apk ของคุณ
อัปเดตการตั้งค่าของคุณใน AVD Manager และเริ่มอุปกรณ์โดยเปิดใช้งาน 'ล้างข้อมูลผู้ใช้' สิ่งนี้ใช้ได้สำหรับฉัน
ฉันเดาคุณควรรีสตาร์ทอีมูเลเตอร์ด้วย "emulator -wipe-data -avd YourAvdName" หรือทำเครื่องหมาย "Wipe User Data" ในการกำหนดค่าการรันหากคุณใช้ Eclipse
ฉันกำลังเผชิญกับปัญหาเดียวกันในขณะนี้
ครั้งเดียวที่ฉันเห็นสิ่งนี้เกิดขึ้นมันก็คือเมื่อระบบไฟล์โฮสต์ออกจากพื้นที่ คุณมีพื้นที่ว่างมากในระบบไฟล์ที่จัดเก็บระบบไฟล์ของ VM หรือไม่?
มันไม่ใช่คำตอบที่เหมาะสม defenetly แต่มันเป็นคำใบ้เล็ก ๆ น้อย ๆ
หากคุณต้องการใช้ประโยชน์จากไฟล์คงที่ในแอพของคุณ คุณควรทำให้พวกเขาเป็นทรัพยากรหรือเป็นสินทรัพย์ แต่ถ้าคุณมีความกังวลเกี่ยวกับหน่วยความจำต้องการให้ APK ของคุณมีขนาดเล็กคุณต้องเปลี่ยนการออกแบบแอพในแบบที่
แทนที่จะวางไว้เป็นแหล่งข้อมูลในขณะที่เรียกใช้แอพของคุณ (หลังการติดตั้ง) คุณสามารถนำไฟล์ต่าง ๆ ไปใช้เพื่อป้องกันไฟล์ต่าง ๆ เนื่องจากผู้ใช้อาจไม่เก็บไฟล์ที่คุณต้องการจาก SD Card สำหรับ U นี้สามารถใช้ ContentResolver เพื่อรับไฟล์เสียง, ไฟล์ภาพตามที่ผู้ใช้เลือก
ด้วยวิธีนี้คุณสามารถมอบคุณสมบัติอื่นให้กับผู้ใช้เช่นเขาสามารถโหลดไฟล์เสียง / ภาพไปยังแอพได้ตามต้องการ
คุณสามารถเริ่มต้นได้เมื่อเลือกหนึ่งรายการจากต้นไม้ซ้าย "อุปกรณ์เสมือน" ในกล่องโต้ตอบตัวจัดการ AVD บนแพลตฟอร์มของ eclipse UI เริ่มต้นมีตัวเลือก "ล้างข้อมูลผู้ใช้"
วิธีการต่อไปนี้ได้ผลสำหรับฉัน
นำทางไปยังโฟลเดอร์ SDK / tools ของ Android ในหน้าต่างเทอร์มินัล (ในกรณีที่คุณไม่ได้เพิ่มพา ธ )
ตรวจสอบให้แน่ใจว่าอุปกรณ์เสมือนที่คุณวางแผนจะล้างนั้นปิดอยู่
รันคำสั่ง "./emulator -wipe-data -avd YourAvdName" โดยที่ YourAvdName เป็นชื่อของอุปกรณ์ Android เสมือนของคุณ
ลองเลือกโครงการ -> ทำความสะอาด ทำความสะอาดง่ายอาจแก้ไขได้