หลายๆคนคงเคยเจอปัญหากับ Market ตัวใหม่ (เวอร์ชั่น 3) ที่เวลาจะโหลดแอปที่ใหญ่ๆ (เกิน 30MB) แล้วไม่สามารถโหลดได้ มันจะแจ้งว่า Insufficient Storage Available ปัญหานี้เกิดจากตัว Market จะโหลดตัวแอพไปลงใน Cache ก่อน ทีนี้โทรศัพท์บางรุ่น ( อย่างเช่น Samsung Galaxy S ) ที่ให้ Cache มาน้อยนิดก็เลยเกิดปัญหาเนื้อที่ไม่พอกันไป ซึ่ง Kernel Mod บางตัวก็ได้ขยาย Cache ให้แล้ว แล้วคนที่ยังมี Cache เท่าเดิมล่ะ…
วิธีนี้ไม่ได้ขยาย Cache ตรงๆ แต่จะสั่งให้ Cache มันชี้ไปที่อื่น (แบบชั่วคราว)
สิ่งที่ต้องการ
- เครื่องที่ root แล้ว
- adb (ถ้าไม่มี มันมีโปรแกรมอะไรซักอย่างที่ทำ command line ในเครื่องโทรศัพท์ได้เลย จำไม่ได้ว่าชื่ออะไร)
ลงมือ!
- abd shell
- su
- mkdir /sdcard/tempcache
// สร้าง directory ขึ้นมาใหม่ หรือจะใช้ชื่ออื่นก็ได้ครับ แต่ขั้นตอนต่อไปก็ใช้ชื่อเดียวกันละกัน - mount -o bind /sdcard/tempcache /cache
// สั่ง mount cache มาที่ /sdcard/tempcache แทน เรามี sdcard ใหญ่เท่าไร ก็มี cache ใหญ่เท่านั้น - exit
- exit
*Cache ที่ใหม่นี่จะยังคงอยู่จนเราไปสั่ง mount ที่ใหม่ หรือ restart เครื่องครับ
ปล. ผมลองเปลี่ยนจุด mount cache เฉยๆนะ ไม่ได้ลองพวก data รึ dbdata เพราะฉะนั้นถ้าใครทำแล้วเครื่องเน่า ผมไม่เกี่ยวนะ
ที่มา http://forum.xda-developers.com/showthread.php?t=941339
terminal emulator หรือป่าว
ลง android sdk แล้วก็ใช้ผ่าน PC ได้ครับ
+1 ครับ terminal emulator
แจ่มมากครับ ใช้กับ SSGT ได้แล้ว ขอบคุณครับ
ขอบคุณสำหรับวิธีครับ เป็นมานานและ
ไม่มีวิธีสำหรับไม่ root บ้างหรอครับ
ทำแบบนี้ ไม่ root คงไม่ได้
ลอง uninstall market update ดูครับ กลับไปใช้ตัวเก่า น่าจะได้
Thanks 🙂
ก็เป็นอีกวิธีนึง แต่ผมว่ายุ่งยากไปนิดครับ
อีกวิธีที่ีผมใช้อยู่คือ สลับมาร์เก็ตใช้ครับ
โดยใช้ titanium backup ทำการ freeze ตัว market updater ไม่ให้มัีนทำงาน
หรือจะใช้ root explorer ก๊อปเก็บแล้วลบทิ้งเลยก็ได้
เวลาจะโหลดแอพใหญ่ๆ ก็ใช้ market 2.3.6
ถ้าอยากใช้เวอร์ชั่นใหม่ก็ก็อปมาทับกลับ แค่นั้นเอง ผมว่าง่ายดี ไม่ต้อง adb ให้เสียว
ใน sd ผมมี market เก็บไว้สามสี่เวอร์ชั่นแหนะ 555
ถ้ามีสคริปให้ run จะง่ายก่านี้พันเท่า
เดี๋ยวจะลองหาวิธีทำให้เป็น start up script ดู ขอเวลางมหาวิธีทำใน xda ก่อน
ขอบคุณล่วงหน้าเลยขอรับ :bigsmile:
ลองดูละ มันต้องไปแก้ใน init.d เลยไม่เอาดีกว่า ใช้เครื่องทำงานอยู่ด้วย เดี๋ยวพลาดแล้วซวย เอาไว้มีเครื่องใช้อีกเครื่องแล้วเดี๋ยวจะมาต่อภาค 2
วิธีนี้เวลารีบูตเครื่องต้องทำใหม่มั้ยครับ?
report ให้ Google แก้ให้ดีกว่า 555
จริงๆเป็นปัญหาที่ถ้าทาง Google จะแก้ก็ง่ายมาก
แค่ตรงส่วน Temp มันไม่พอ แล้วก้ไม่ได้ลบหรือไม่ก็เมมเครื่องมันน้อยก็เลยไม่พอ
แต่จริงๆลงได้
ทำให้มีเหตุผลให้คน Root เครื่องเพิ่มขึ้นเปล่าๆ
เกม Third blade เครื่อง mini น้องผมเล่นได้
แต่ตอนลงมีปัญหา ผมแก้วิธีคล้ายๆ ข้างบนก็แก้ได้สบายๆ
^^
Thx ครับ
ทำผ่าน terminal ได้ละครับ
แจ่มครับ
ทำไม่เป็นอะครับ มีวิธีง่ายๆ ไหม เครื่องผมมี root explorer ผู้รู้บอกขั้นตอนทีละขั้นตอนแบบละเอียดได้ไหมครับ
ใช้ terminal emulator เลยครับ
เริ่มที่ขั้นที่ 2 ได้เลย
งงตรง
// สร้าง directory ขึ้นมาใหม่ หรือจะใช้ชื่ออื่นก็ได้ครับ แต่ขั้นตอนต่อไปก็ใช้ชื่อเดียวกันละกัน
กับ
// สั่ง mount cache มาที่ /sdcard/tempcache แทน เรามี sdcard ใหญ่เท่าไร ก็มี cache ใหญ่เท่านั้น
มันหมายความว่าไงครับ อ่านแล้วงงสุดๆ -.-
// = comment
คืออธิบายว่าขั้นที่ 3 กับขั้นที่ 4 ทำอะไร
มันเป็นการสร้าง folder ใน sdcard แล้วย้าย cache ของระบบมาชี้เอาไว้ที่นี่แทน
ดังนั้นขนาดพื้นที่ของ cache ระบบก็จะมีขนาดพื้นที่เท่ากับพื่นที่ของ sdcard
ถึงอย่างนั้นผมก็ทำไม่เป็นอยู่ดีอะครับ ว่าขั้นที่3กับ4 ทำยังไง –*
สำหรับ Galaxy S 3 และ 4 ทำอันนี้
3.สร้าง โฟลเดอร์ชื่อ cache ใน sdcard เพราะฉะนั้นพาร์ธเต็มจะเป็น /mnt/sdcard/cache
4.mount -o bind /mnt/sdcard/cache /cache
จบ
หรือจะใช้วิธีการแบบนี้ก็ได้
http://fkdroid.blogspot.com/
ผมทำข้อ3ไม่ได้ครับ มันขึ้น not found
ขอถามนิดนึงครับ ผมอยากรู้ว่า mkdir นี่มันคืออะไรหรอครับ
สร้าง folder ครับ
mkdir = make directory
ทำได้แล้วครับบบ
รบกวนอีกหน่อยครับ ผมทำตามขั้นตอนสำเร็จทุกอย่างแล้ว แต่พอลองโหลดเกมไฟล์40mb มา มังก็ขึ้นเหมือนเดิมอะครับ ทำไงดี
จุดสำคัญที่สุดคือข้อ 4 ครับ ที่เป็นคำสั่งให้ ไปชี้ cache ที่ที่อื่น
งั้นต้องดูว่าตัว sdcard มันอยู่ที่ไหน อยู่ใต้ root หรือ mnt
ปล.ของผมพอเปลี่ยนจุด mount cache แล้วก็ลงแอพที่ใหญ่ๆได้นะ แต่พอรีเครื่องมันก็ขึ้นเตือนเหมือนเดิม แต่แอพยังอยู่ดี
ผมลอง ลบแล้วเอาเวอร์ชั่นก่อน3ใช้ได้อะ แต่หลังจากเวอร์ชั่น3มาแล้วไม่ได้เลย ลองกับp1000 ครับ
ของผมอยู่ใน mnt ครับ แต่ผมก็เปลี่ยนตรง mkdir เป็น mnt แล้ว พอขั้นตอนที่3เสร็จมันจะขึ้นว่า permission denied ขั้นที่4ผมก็ทำตามนั้นพอเสร็จ มันก็จะขึ้น usage: mount [-r] [-w] [-o option] [-t type] device directory
ปล.ใช้ terminal ครับ
permission denied?
ไม่ใช่ว่าลืม su นะ
ไม่ลืมครับ
ของผมอยู่ใน mnt ครับ แต่ผมก็เปลี่ยนตรง mkdir เป็น mnt แล้ว พอขั้นตอนที่3เสร็จมันจะขึ้นว่า permission denied ขั้นที่4ผมก็ทำตามนั้นพอเสร็จ มันก็จะขึ้น usage: mount [-r] [-w] [-o option] [-t type] device directory
ปล.ใช้ terminal ครับ
market เก่ายังไม่เป็นเลย
อันใหม่แล้วจุกจิก
ผมทำกี่ครั้งมันก็ขึ้น permission denied ตลอเลยครับ
พอสั่ง su แล้ว prompt มันขึ้นเป็น $ หรือ # ครับ
$ครับ
พอลอง su อีกรอบ กลายเป็น # แต่ขั้นที่3ก็ยัง permission denied อยู่ดีอะครับ
อ่ะ แปลก ได้ root ไม่น่าจะมีปัญหาเรื่อง permission
chmod โลด
chmod คือไรอะครับ
แก้ permission
แล้วมันทำยังไงอะครับ ช่วยสอนหน่อย ผมไม่เป็นจริงๆ – -*
chmod 777 /mnt/sccard
ช่วยอธิบายให้ละเอียดหน่อยครับ ลองทำหลายรอบแล้วครับ ไม่ผ่าน เครื่อง galaxy tab
ขั้นตอนการทำนี่ผมคิดว่าละเอียดพอสมควรแล้วนะครับ
เอาเป็นว่าติดตรงไหนค่อยมาดูกันเป็นจุดๆดีกว่า ว่ามันเป็นเพราะอะไร
อธิบายให้เคลียหน่อย คนที่ทำไม่ได้มีอีกเยอะ ถ้าเป็นgalaxy tab เข้าไปหาในxdaได้เลย เขาทำตัวอัพใว้แล้วได้ผล100%ชัวครับ ไม่มั่วด้วย
http://forum.xda-developers.com/showthread.php?p=16416914
ตามลิงค์เลยครับ ไม่มั่ว ไม่ยาก ง่ายๆ แต่ต้องroot
ขอบคุณครับ ทำได้แล้ว หมดปัญหาสักที