ติดตั้ง Sdcard ว่าจะทำอย่างไร จะสลับหน่วยความจำบน Android ได้อย่างไร จะทำอย่างไร? ความเสี่ยงและสิ่งที่คุณต้องรู้

ดำเนินการต่อในหัวข้อของอุปกรณ์กระพริบที่ใช้ชิปเซ็ต Rockchip 2926 เรามาพูดถึงการเยาะเย้ยแท็บเล็ต Prestigio นั่นคือเครื่องอ่านหลายเครื่องที่มีการกำหนด 5274 ข.เครื่องมือนี้ รูปร่างและ ข้อกำหนดทางเทคนิคไม่ต่างจากพระเอกวันก่อนอย่าง Enot E102 เท่าไหร่นัก คำอธิบายโดยละเอียดคุณจะไม่พบที่นี่ เช่นเดียวกับ Prestigio ต้นกำเนิดของจีนอย่างตรงไปตรงมาของอุปกรณ์นั้นได้รับการเสริมประสิทธิภาพด้วยเฟิร์มแวร์ที่คิดมาอย่างดี - ไม่มีอะไรฟุ่มเฟือยในนั้นและทุกสิ่งที่คุณต้องการในครั้งแรกใช้งานได้ทันที นั่นคือมีไคลเอนต์ของผู้ติดต่อ ICQ ผู้อ่านและเครื่องเล่นวิดีโอและไม่ต้องการการตั้งค่าที่รอบคอบหลังจากเปิดใช้งานครั้งแรก แท็บเล็ตที่ใช้ชิปเซ็ต 2926 จะกลายเป็นกระแสหลักในอีกไม่กี่เดือนข้างหน้า อุปกรณ์งบประมาณบน Android ส่วนประกอบที่ล้าสมัย เช่น Allwinner A13 ข้อ จำกัด ของอุปกรณ์ราคาถูกยังคงเหมือนเดิม - หน่วยความจำ 4 GB แบ่งออกเป็นสองส่วนอย่างป่าเถื่อนและการ์ดหน่วยความจำที่ทำงานเป็นที่เก็บเนื้อหาสื่อซึ่งไม่ได้ใช้สำหรับแคชของแอปพลิเคชัน เมื่อนักพัฒนาเฟิร์มแวร์จำได้ว่าตอนนี้การ์ดหน่วยความจำมีราคาถูกมากและมีความทะเยอทะยานตั้งแต่เนิ่นๆ เพื่อให้แน่ใจว่าการทำงานของแท็บเล็ตโดยไม่มีการ์ดในเงื่อนไขเหล่านี้ถือเป็นสิ่งที่ผิดสมัยเป็นอย่างน้อย เหตุใดจึงไม่ติดตั้งอุปกรณ์ที่มีการ์ดอย่างน้อยสองกิกะไบต์ ทิ้งไว้ในเฟิร์มแวร์ เช่น sdcard ไม่ใช่ external_sd ที่คดเคี้ยว โดยไม่บังคับให้ผู้ใช้หาวิธีแก้ไขความอยุติธรรมด้วยวิธีการที่ไม่เป็นทางการ

อย่างไรก็ตาม หัวข้อเรื่องความภักดีต่อผู้ใช้และการหันหน้าเข้าหาพวกเขา ไม่ใช่ที่นั่ง เป็นเรื่องที่กว้างขวางและไม่เกี่ยวข้องกับที่นี่ เราเริ่มดำเนินการกับผู้อ่านทำให้สะดวกยิ่งขึ้น ชีวิตประจำวัน. เริ่มต้นด้วย รับรูท. สำหรับเรื่องนี้ให้ผ่านไป ระดับสูงสุดสำเร็จ ดาวน์โหลดไฟล์เก็บถาวร ( https://www.dropbox.com/s/rhsvca9epfv53ld/ROOT_icood70pro.zip) คลายไฟล์ไปยังไดรฟ์ C โดยไม่มีอักขระรัสเซียในเส้นทาง (เพื่อหลีกเลี่ยงข้อผิดพลาด) บนแท็บเล็ต ให้ทำเครื่องหมายในช่อง ไม่รู้แหล่งที่มา", "การดีบัก USB" และเชื่อมต่อกับคอมพิวเตอร์ ในโฟลเดอร์ที่แตกไฟล์ เราพบ Root.bat และเรียกใช้งาน เรากำลังรอการรีบูตแท็บเล็ตด้วยการปรากฏตัวของ supersu ท่ามกลางความหลากหลายที่ติดตั้ง เราจำเป็นต้องเรียกใช้แอปพลิเคชันนี้ ตกลงที่จะอัปเดตไบนารี และรีบูตแท็บเล็ตอีกครั้ง ทุกอย่างมีสิทธิ์ของผู้ดูแลระบบ - ตอนนี้คุณสามารถแก้ไขไฟล์ระบบ, ลบไฟล์ที่ไม่จำเป็น, เพิ่มอะไรก็ได้ หากอุปกรณ์ของคุณไม่ต้องการรับการรูทด้วยวิธีใดก็ตาม มีวิธี 2. ยกเลิกการเลือกการดีบัก USB ในการตั้งค่าอุปกรณ์ ติดตั้งพีดาเน็ต ( http://pdanet.co/a/), การเลือกติดตั้งไดรเวอร์อื่นๆ ติดตั้ง UnlockRoot ( http://yadi.sk/d/awamSlwP2mpgQ). ใส่เครื่องหมายถูกกลับเข้าที่ เปิด UnlockRoot แล้วกดรูท หลังจากสิ้นสุดการทำงาน ให้รีสตาร์ทแท็บเล็ตและอัปเดต SuperSu

หากคุณมีการ์ดหน่วยความจำและไม่พอใจกับตำแหน่งนักพัฒนาเฟิร์มแวร์ คุณต้องแก้ไข vold.fstab ติดตั้งรูท รุ่น Explorer 2.21 หรือสูงกว่า (อันก่อนหน้านี้ใช้งานไม่ได้กับ 4.1.1) ยอมรับคำขออย่างรวดเร็วเพื่อให้เขาเข้าถึงได้ทุกที่ ตอนนี้ดาวน์โหลด vold.fstab ที่แก้ไขแล้ว ( http://yadi.sk/d/P-SKlRTG4t2Vu) ที่แทนที่การ์ดและส่วนหน่วยความจำภายใน ถ่ายโอนไปยังการ์ดหน่วยความจำ เปลี่ยนชื่อโดยลบออกจากชื่อ ผ่าน นักสำรวจรากค้นหาไฟล์นี้ คลิกที่มัน แตะยาว(โดยคลิกถ้าใครไม่ชอบ anglicisms) แล้วคลิกคัดลอก ตอนนี้ค้นหาไดเร็กทอรี etc เหนือไดเร็กทอรีคุณจะพบปุ่มเมานต์ RW คลิกที่มัน ที่ด้านล่างของหน้าต่างโปรแกรม คลิก "วาง" (วาง) แท็บเล็ตจะถามว่าจะแทนที่ไฟล์ด้วยแบบกำหนดเองของคุณหรือไม่ เห็นด้วย. กดไฟล์ที่ถูกแทนที่ค้างไว้เพื่อเรียกเมนูย่อยโดยเลือก "สิทธิ์" (สิทธิ์) คุณเห็นสี่เหลี่ยมจัตุรัสที่มีหน้าต่างสามบานอยู่ข้างหน้าคุณ ตั้งค่าช่องทำเครื่องหมายให้ตรงกับภาพหน้าจอและใช้การเลือก เหลือเพียงการออกจากโปรแกรมรีสตาร์ทแท็บเล็ตแล้วปล่อยให้บูต ขึ้นอยู่กับประเภทและคุณภาพของการ์ดหน่วยความจำ (ที่ดีที่สุดคือคลาส 10 จากปกติไม่ใช่ผู้ผลิตที่ไม่มีชื่อ) แท็บเล็ตจะบูตจาก 5 นาทีถึงครึ่งชั่วโมง หากทุกอย่างเป็นไปด้วยดีคุณจะพบส่วน "หน่วยความจำ" ที่อัปเดตซึ่งในที่สุดการ์ดจะถูกมองว่าเป็น Sdcard และแอปพลิเคชันสำหรับถ่ายโอนแคชและโปรแกรมไปยัง microSD จะเห็น

การติดตั้ง การกู้คืน CWMมีความเสี่ยงสูงที่จะฆ่า bootloader - พยายามอย่าทำหากไม่มีความปรารถนาอย่างแรงกล้าที่จะทดลองหรือจำเป็นต้องติดตั้ง เฟิร์มแวร์ที่กำหนดเองตาม 4.2.2 ในขณะที่เขียนไม่พบสิ่งนี้ดังนั้นใน ช่วงเวลานี้ การติดตั้ง CWMบน Prestigio MultiReader 5274 เป็นการใช้งานในทางทฤษฎีเท่านั้น ดังนั้นดาวน์โหลด CWM() การติดตั้งสามารถทำได้หลายวิธี วิธีที่ถูกต้องที่สุดและปลอดภัยที่สุดคือเปลี่ยนชื่อไฟล์เก็บถาวรเป็น update.zip และตอบคำขอของแท็บเล็ตในเชิงบวกเพื่อรีบูต ตอนนี้คุณสามารถเข้าสู่การกู้คืนอย่างเรียบง่ายและสวยงามโดยกดปุ่มเพิ่มระดับเสียงและเปิดปิดค้างไว้ จะปรากฏขึ้นเมื่อใด หุ่นยนต์สีเขียว, ปล่อยปุ่ม , กดเสียง + ค้างไว้ และกดปุ่มเปิดปิดหนึ่งครั้ง เมนูการกู้คืน CWM ซึ่งเป็นที่รู้จักของทุกคนจะปรากฏขึ้นโดยมีทุกอย่างให้ใช้งานตั้งแต่การติดตั้งพาร์ติชันไปจนถึงการสำรองข้อมูลและเฟิร์มแวร์เซน สะดวกในการรีบูตเข้าสู่การกู้คืนและผ่านแอปพลิเคชัน Goo Manager จากตลาด วิธีอื่นๆ ในการนำ CWM ไปใช้ในขณะนี้มักทำให้อุปกรณ์เสียหายและฉันจะไม่พูดถึงพวกเขา พอเพียงแล้วที่จะบอกว่าการติดตั้งเกิดขึ้นผ่าน adb shell ซึ่งจะช่วยให้คุณมองหาคำแนะนำโดยประมาณเกี่ยวกับวิธีการดำเนินการนี้ และโทษคนอื่นว่าอุปกรณ์ไม่ทำงาน

และอันสุดท้ายสำหรับวันนี้ หากสิ่งนี้เกิดขึ้นและเป็นผลมาจากสถานการณ์ที่ไม่คาดฝัน (เช่น การติดตั้งการกู้คืน CWM) หรือการจัดเรียงดวงดาวบนท้องฟ้าที่ไม่ถูกต้อง แท็บเล็ตปฏิเสธที่จะทำงาน จากนั้นเราจะพยายามคืนแท็บเล็ตสู่โลกแห่งสิ่งมีชีวิตโดย กระพริบมัน ในมุมมองของการระบุตัวตนที่สมบูรณ์ของคำแนะนำการกะพริบกับผู้ป่วยรายก่อนหน้า Enot E102 โปรดอ่านเกี่ยวกับเรื่องนี้ ฉันไม่เห็นเหตุผลที่จะต้องทำซ้ำ เนื่องจากข้อแตกต่างเพียงอย่างเดียวคือในไฟล์ที่คุณจะฝัง ภาพเฟิร์มแวร์อยู่ในเว็บไซต์ทางการ ( http://www.prestigio.com/catalogue/MultiReaders/MultiReader_5274/PER5274B#/product-support/firmware ). นอกจากนี้ยังมีโปรแกรมเอง

โปรดจำไว้ว่า การดำเนินการทดลองการแฟลชทุกรูปแบบ คุณอาจสูญเสียการรับประกันโดยสิ้นเชิงและถูกทิ้งไว้โดยไม่มีอุปกรณ์ที่ใช้งานได้บน Android ดังนั้นความใส่ใจความเอาใจใส่และคำเดียวกันอีกครั้ง ในแง่ดีนี้ ขอลาไปก่อน อีกไม่นานเราคงได้พบกันใหม่ พูดคุย ด่าว่า ติติง อะไรอีกบ้าง

ตามที่สัญญาไว้ในความคิดเห็นเกี่ยวกับหมายเหตุ “ Deployment Manager หรือที่อื่นๆ ที่คุณสามารถปรับใช้ไฟล์ได้” ฉันขุดเพิ่มเติมเล็กน้อยในระบบไฟล์ (หรือมากกว่านั้นในลำดับชั้นของไดเรกทอรี) พื้นฐานของบทความนี้คือคำถามจาก Dmitry Kuzmenko ฉันหวังเป็นอย่างยิ่งว่าจะสามารถตอบได้ในปริมาณที่กำหนด พูดคุยเกี่ยวกับ Android OC ผู้ผลิตอุปกรณ์ที่ใช้ระบบปฏิบัติการนี้และฉันจะแสดงตัวเลือกต่างๆสำหรับการรับรายการ อุปกรณ์ที่มีอยู่การจัดเก็บข้อมูล


ดำเนินการต่อสำหรับ Android 4.4.* ที่นี่: Android 4.4 และการเขียนไปยังการ์ดหน่วยความจำภายนอก...

อัปเดต (17.02.14) ตามความคิดเห็น มีการเปลี่ยนแปลงกับแอปพลิเคชัน
อัปเดต 2 (17.02.14) ตรวจพบผลบวกลวงของตัวแปรที่ 3 คุณลักษณะนี้ได้รับการแก้ไขแล้ว ปรับปรุงการค้นหาเล็กน้อย

ปรับปรุง (03/30/57). วิธีที่สามใช้ได้กับ Android เวอร์ชันต่ำกว่า 4.3 สำหรับเวอร์ชันที่สูงกว่า 4.3 ฉันจะไม่เขียนโค้ดเพราะ ฉันไม่มีอุปกรณ์ที่ใช้ Android เวอร์ชันนี้เพื่อวิเคราะห์โครงสร้างใหม่
อัปเดต (21.04.14) ตรวจสอบรหัสบน Delphi XE6

อัพ 3 (07/15/57). อัปเดตซอร์สโค้ดพบว่าทำงานไม่ถูกต้อง (บั๊ก AV) ในบางอุปกรณ์

ฉันจะพยายามระบุสาระสำคัญทั้งหมดสั้น ๆ เพื่อให้ข้อความ 10 หน้าไม่ทำงาน

เริ่มจากพื้นฐานกันก่อน

ห้องผ่าตัด ระบบแอนดรอยด์ขึ้นอยู่กับ เคอร์เนลลินุกซ์. บนระบบปฏิบัติการแบบ Unix จะมีไดเร็กทอรีหลักเพียงไดเร็กทอรีเดียว และไฟล์และไดเร็กทอรีอื่นๆ ทั้งหมดจะซ้อนอยู่ในนั้น บนระบบที่คล้าย UNIX ส่วนใหญ่ ดิสก์แบบถอดได้,แฟลชไดรฟ์และอื่นๆ อุปกรณ์ภายนอกที่เก็บข้อมูลถูกติดตั้งในไดเร็กทอรี /mnt, /mount หรือ /media (ในกรณีของเรา นี่คือโฟลเดอร์ /mnt) ระบบปฏิบัติการที่เหมือน UNIX ยังอนุญาตให้ติดตั้งดิสก์โดยอัตโนมัติเมื่อระบบปฏิบัติการบูท

กำหนดรายการอุปกรณ์เก็บข้อมูลที่มีอยู่

ก็ต้องบอกทันทีว่า แอนดรอยด์เอพีไอฉันไม่พบวิธีการกำหนดรายการดังกล่าว ดังนั้นสิ่งแรกที่นึกถึงคือการตรวจสอบ วิธีที่เป็นไปได้อย่างอิสระและที่นี่ "BUT" ตัวแรกจะปรากฏขึ้น ทุกอย่างจะง่ายหากไม่ใช่สำหรับผู้ผลิตอุปกรณ์ที่ยังคงต้องการเปลี่ยนแปลงบางอย่างใน Android และในกรณีนี้พวกเขาก็พยายาม ผมทดลองแล้วพบว่า ตัวเลือกเส้นทางนั้นใหญ่พอและแทบจะเป็นไปไม่ได้เลยที่จะจำเส้นทางทั้งหมดได้ ยกเว้นแต่จะเริ่มสะสม ฐานทั่วไปตัวเลือกดังกล่าวจากทั้งหมด เจ้าของแอนดรอยด์อุปกรณ์

เข้าร่วมในการทดลองของฉัน (ของฉันมีเพียงอันเดียว - SGS2 :):

  • ซัมซุง กาแลคซี่ เอส พลัส - แอนดรอยด์ 2.3.6
  • ซัมซุง กาแลคซี่ เอส 2 - แอนดรอยด์ 4.1.2
  • HTC Sensation Z710e - แอนดรอยด์ 4.0.3
  • เอชทีซี วัน เอ็กซ์ - แอนดรอยด์ 4.2.2
  • เอชทีซี ไรม์ - แอนดรอยด์ 4.0.3

ทีนี้มาดูกันว่าอุปกรณ์เหล่านี้มีเส้นทางใดบ้าง เส้นทางไปยังแผนที่ภายใน (ถ้ามี) มีความสำคัญต่อเรา การ์ดภายนอก(ถ้ามี)และ อุปกรณ์ USB(ถ้ามี).

อย่างที่คุณเห็น เส้นทางนั้นแตกต่างกันไปทุกที่

ตัวเลือกที่ 1.

เราสร้างอาร์เรย์ของค่าที่เป็นไปได้และในลูปเราตรวจสอบความพร้อมใช้งานแต่ละรายการโดยใช้การตรวจสอบตามปกติสำหรับการมีอยู่ของโฟลเดอร์ ( TDirectory.Exists) เช่นเดียวกับในโฟลเดอร์ว่าง ( TDirectory.IsEmpty).

ฉันทำขึ้น รายการทั่วไปสำหรับอุปกรณ์เหล่านี้และเขียนแอปพลิเคชันขนาดเล็กสำหรับการตรวจสอบ

รายการของฉัน (อิงจาก 5 อุปกรณ์ยอดนิยม):

  • /mnt/sdcard
  • /mnt/sdcard/external_sd
  • /mnt/extSdCard
  • /mnt/ยูเอสบี
  • /mnt/UsbDriveA
  • /mnt/UsbDriveB
  • /mnt/UsbDriveC
  • /mnt/UsbDriveD
  • /mnt/UsbDriveE
  • /mnt/UsbDriveF

กำลังค้นหา เส้นทางที่คล้ายกันบนอินเทอร์เน็ต ฉันพบอีก 3 จุดที่เป็นไปได้:

  • /mnt/external_sd
  • /mnt/usb_storage
  • /mnt/ภายนอก

เพิ่มเติมจากดมิทรี คุซเมนโก:

Sony Xperia V-4.1.2

  • /mnt/sdcard
  • /mnt/ext_card
  • /mnt/usbdisk

อีกเล็กน้อย:
โซนี่ เอ็กซ์พีเรีย โก - 4.1.2

  • /mnt/sdcard
  • /mnt/ext_card
  • /mnt/usbdisk
ซัมซุง กาแลคซี่ เอส 4 - 4.2.2
  • /mnt/sdcard
  • /mnt/extSdCard
  • /mnt/UsbDriveA
  • /mnt/UsbDriveB
  • /mnt/UsbDriveC
  • /mnt/UsbDriveD
  • /mnt/UsbDriveE
  • /mnt/UsbDriveF
คุณจะพบอาร์เรย์ที่เสร็จแล้วในรหัสด้านล่าง คุณสามารถแสดงความคิดเห็นเกี่ยวกับเส้นทางบนอุปกรณ์ของคุณในแบบฟอร์มนี้:

ชื่ออุปกรณ์ - เวอร์ชัน Android

เส้นทางตรงไปยังหน่วยความจำภายใน

เส้นทางตรงไปยังการ์ดหน่วยความจำภายนอก

เส้นทางตรงไปยังอุปกรณ์ USB

เส้นทางทั้งหมดเริ่มต้นด้วยโฟลเดอร์ /mnt/


หรือคัดลอกและส่งไฟล์ "/etc/vold.fstab" มาที่ infocean @ gmail.com หรือในความคิดเห็น (อย่าลืมระบุรุ่นอุปกรณ์และเวอร์ชัน Android) โปรดรวมโฟลเดอร์ทั้งหมดที่อยู่ในส่วน /mnt ไดเร็กทอรี / มันสำคัญมาก

แอปพลิเคชัน:

ใช้ System.IOUTils; const pathmnt: อาร์เรย์ของสตริง = ("/mnt/sdcard", "/mnt/sdcard/external_sd", "/mnt/extSdCard", "/mnt/usb", "/mnt/UsbDriveA", "/mnt/UsbDriveB ", "/mnt/UsbDriveC", "/mnt/UsbDriveD", "/mnt/UsbDriveE", "/mnt/UsbDriveF", "/mnt/external_sd", "/mnt/usb_storage", "/mnt/external" , "/mnt/ext_card", "/mnt/usbdisk"); ขั้นตอน TForm1.Button1Click (ผู้ส่ง: TObject); var i: จำนวนเต็ม; เริ่มต้น Memo1.Lines.Clear; Memo2.Lines.Clear; สำหรับ i:= 0 ถึง Length(pathmnt) - 1 จะเริ่มต้นถ้า TDirectory.Exists(pathmnt[i]) และไม่ใช่ TDirectory.IsEmpty(pathmnt[i]) จากนั้นเริ่ม Memo1.Lines.Add(pathmnt[i]); Memo2.Lines.Add("จริง"); จบอย่างอื่น เริ่มต้น Memo1.Lines.Add(pathmnt[i]); Memo2.Lines.Add("เท็จ"); จบ; จบ; จบ;

ตัวเลือก #2

ตัวเลือกแรกมีทั้งข้อดีและข้อเสีย (หลักคือความไม่สมบูรณ์ของรายการเส้นทางที่เป็นไปได้) ดังนั้นลองแก้ งานนี้อีกวิธีหนึ่ง

มีไฟล์ดังกล่าว vold.fstab", อยู่ที่นี่"/etc/"("/system/etc/"). นี่เป็นหนึ่งใน ไฟล์คอนฟิกูเรชันวี ระบบที่เหมือน UNIXซึ่งมีข้อมูลเกี่ยวกับต่างๆ ระบบไฟล์และอุปกรณ์จัดเก็บข้อมูล อธิบายถึงวิธีการใช้ดิสก์ (พาร์ติชัน) หรือวิธีการรวมเข้ากับระบบ

และมีไฟล์ ภูเขา", อยู่ที่นี่ "/proc/" มีข้อมูลเกี่ยวกับจุดเชื่อมต่อทั้งหมดที่ใช้ในอุปกรณ์ สิ่งสำคัญคือต้องเข้าใจว่าหากไม่ได้กล่าวถึงการ์ดหน่วยความจำ ไฟล์ที่กำหนดจากนั้นจะไม่เชื่อมต่อ ซึ่งหมายความว่าไฟล์ได้รับการปรับปรุงอย่างต่อเนื่อง

เป็นขั้นเป็นตอน:

  1. กำลังอ่านไฟล์ vold.fstab»
  2. เราตรวจสอบความพร้อมใช้งานของอุปกรณ์แต่ละเครื่องโดยการอ่านไฟล์ " ภูเขา” และค้นหาสตริงที่ต้องการในนั้น

ในตัวเลือกนี้จะยังไม่มีรหัสเพราะ ด้วยเหตุผลบางอย่างที่ไม่ทราบสาเหตุ ฉันไม่สามารถอ่านไฟล์ "เมานต์" ได้ ในเรื่องนี้ ฉันเสนอทางเลือกที่สาม


ตัวเลือก #3

เรารวมตัวเลือกที่หนึ่งและสองเข้าด้วยกัน รายการจะนำมาจากไฟล์ " vold.fstab" และตรวจสอบด้วยตัวคุณเองโดยไม่ต้องเปิดไฟล์" ภูเขา". ทำไมต้องทรมานไฟล์สองไฟล์ในแต่ละครั้งเมื่อคุณสามารถทำงานกับไฟล์เดียวได้

เป็นขั้นเป็นตอน:

  1. กำลังอ่านไฟล์ vold.fstab»
  2. รวบรวมรายชื่ออุปกรณ์จัดเก็บข้อมูล (เสร็จไปครึ่งหนึ่งแล้ว)
  3. ตอนนี้วนซ้ำรายการและตรวจสอบแต่ละเส้นทางด้วย " TDirectory.Exists" และ " TDirectory.IsEmpty»
  4. เราจัดทำรายการอุปกรณ์เก็บข้อมูลที่มีอยู่จริง

อัพเดท 17.02.14:ขอบคุณ Dmitry Kuzmenko และความพยายามร่วมกัน เราพบว่าไฟล์ "/etc/vold.fstab" ใน Sony Xperia V แตกต่างจากไฟล์อื่นเล็กน้อย ดังนั้นจึงมีการเปลี่ยนแปลง แหล่งที่มาแอพพลิเคชั่น. ตรวจสอบทุกอย่างแล้ว ใช้งานได้! :) แหล่งข้อมูลอัพเดททุกที่

อัปเดต 2-17.02.14:ในไฟล์ "/etc/vold.fstab" บางครั้งมี (ในบางอุปกรณ์) แสดงความคิดเห็นบรรทัดที่คล้ายกับบรรทัดที่ฉันกำลังมองหาในรหัสของฉันซึ่งเกี่ยวข้องกับสิ่งนี้ เป็นผลบวกที่ผิดพลาดเกิดขึ้น ฉันแก้ไขคุณสมบัตินี้ใน เวอร์ชั่นใหม่รหัส.
แก้ไขการค้นหาบรรทัดที่จำเป็นด้วย ตอนนี้มันเป็นสากลมากขึ้น!

โดยทั่วไปแล้ว ตอนนี้โค้ดควรใช้งานได้ตามปกติ อุปกรณ์ต่างๆ. ลองยกเลิกการสมัครในความคิดเห็น แนบไฟล์ "/etc/vold.fstab" ของคุณ (อย่าลืมระบุรุ่นอุปกรณ์และเวอร์ชัน Android)

อัปเดต 3 - 15.07.14:
ผู้อ่านบล็อก Sergey Yakimenko ไม่พบ การทำงานที่ถูกต้อง(อ่านไฟล์) ตัวเลือกที่สามบนอุปกรณ์ หัวเว่ย แอสเซนด์ P6และ รีเล็กซ์ TAB-07ตามที่รายงานในความคิดเห็น

หลังจากการติดต่อส่วนตัวและการวิเคราะห์บางอย่าง ฉันพบว่าปัญหาประเภทใดที่ขัดขวางการทำงาน

ปัญหาที่พบและแก้ไขแล้ว:

  1. ช่องว่างที่จุดเริ่มต้นของแต่ละบรรทัดที่พบ แก้ไขด้วย "ทริม"
  2. บรรทัดที่พบใช้แท็บแทนช่องว่าง แก้ไขโดยการแทนที่อักขระแท็บด้วยช่องว่าง
อัปเดตรหัสแล้ว ขอบคุณมากสำหรับเซอร์เกย์

แอปพลิเคชัน:

ใช้ System.StrUtils, System.IOUTils; ขั้นตอน TForm1.Button1Click (ผู้ส่ง: TObject); var OpenFileVold: TStringList; ฉัน: จำนวนเต็ม; เส้นทางอุณหภูมิ: TStringDynArray; เริ่มต้น OpenFileVold:= TStringList.Create; ลอง // อ่านไฟล์ OpenFileVold.LoadFromFile("/etc/vold.fstab"); สำหรับ i:= 0 ถึง OpenFileVold.Count - 1 จะเริ่มต้นถ้า (Pos("dev_mount", OpenFileVold.Strings[i]) > 0) หรือ (Pos("fuse_mount", OpenFileVold.Strings[i]) > 0) จากนั้น เริ่มต้น // อัปเดต (15.07.14) // 1 - ลบช่องว่างที่จุดเริ่มต้นและจุดสิ้นสุดของสตริง (กำจัด AV) // 2 - แทนที่อักขระแท็บด้วยช่องว่าง pathtemp:= SplitString(StringReplace(Trim(OpenFileVold.Strings [i] ), #9, " ", ), " "); // ตรวจสอบอักขระตัวแรกของสตริงว่าตรงกับอักขระ "#" หรือ "##", // เพื่อให้ไม่มี ผลบวกปลอมถ้า (pathtemp<>"#") และ (อุณหภูมิพาธ<>"##") จากนั้นเริ่มต้นถ้า TDirectory.Exists(pathtemp) และไม่ใช่ TDirectory.IsEmpty(pathtemp) ให้เริ่ม Memo1.Lines.Add(pathtemp); จบ; จบ; จบ; จบ; ในที่สุด OpenFileVold.Free; // FreeAndNil (ไฟล์ต้นฉบับ); จบ; จบ;

ผล:เราเรียนรู้วิธีรับรายการอุปกรณ์เก็บข้อมูลที่มีอยู่ (ฉันจะใช้ตัวเลือกที่สาม) ข้อความ (ไม่มีรหัสและรูปภาพ) ออกมาใน 3 หน้า ส่วนใหญ่แล้วพวกเขาไม่มีเวลาเบื่อ :)

ขอขอบคุณทุกท่านที่ให้ความสนใจและการพัฒนาที่ประสบความสำเร็จ

ปล. ยินดีต้อนรับเพิ่มเติม
ปล.2 ฉันใช้เวลามากมายในการทดลองและเปรียบเทียบ vold.fstab, mounts จากอุปกรณ์ต่างๆ...
ป.ล. 3 ในบทความถัดไป ฉันจะแสดงวิธีกำจัดปัญหาการอัปเดตฐานข้อมูลเมื่ออัปเดตแอปพลิเคชันด้วยตนเอง

ความสามารถของอุปกรณ์สามารถขยายได้อย่างจริงจังโดยการแทนที่ หน่วยความจำภายใน Android ไปยังการ์ดหน่วยความจำ ซึ่งจะช่วยให้คุณสามารถติดตั้งบนแท็บเล็ตหรือแกดเจ็ตอื่นๆ ได้มาก แอพเพิ่มเติมแต่ข้อกำหนดหลักในการดำเนินการอัปเดตนี้คือการมีสิทธิ์รูทบนอุปกรณ์ มาดูวิธีใช้การ์ด SD เป็น หน่วยความจำระบบอุปกรณ์และเงื่อนไขที่เกี่ยวข้อง

ความเสี่ยงและเงื่อนไขในการเปลี่ยนหน่วยความจำภายในของอุปกรณ์ด้วยการ์ด SD

ก่อนที่จะทำซ้ำขั้นตอนที่อธิบายด้านล่าง ผู้ใช้ควรพิจารณาประเด็นสำคัญหลายประการ:

  1. อายุการใช้งานของการ์ด SD จะลดลงอย่างมากเนื่องจากรอบการอ่าน/เขียนบ่อยครั้งเมื่อเรียกใช้แอปพลิเคชัน
  2. ความเร็วของแกดเจ็ตอาจลดลงอย่างเห็นได้ชัดหากคุณใช้ การ์ด microSDชั้นต่ำ
  3. หากคุณทำผิดพลาดขณะแก้ไขไฟล์ระบบ โทรศัพท์ของคุณอาจ คราวหน้าไม่บูต - คุณต้อง reflash

โดยทั่วไปขั้นตอน (โดยเฉพาะอย่างยิ่งสำหรับ ผู้ใช้ที่ไม่มีประสบการณ์) ค่อนข้างเสี่ยง ดังนั้นจึงเหมาะสมที่จะนำไปใช้กับแกดเจ็ตเก่าที่มีหน่วยความจำเพียงเล็กน้อยเท่านั้น

การใช้ยูทิลิตี Root Browser และแก้ไขไฟล์ vold.fstab

หากต้องการสลับหน่วยความจำจาก Google เพลย์จำเป็นต้องติดตั้ง รูทเบราว์เซอร์.

เราขอย้ำอีกครั้งว่าคุณสามารถทำงานได้อย่างเต็มที่บนอุปกรณ์ที่รูทเท่านั้น หลังจากเรียกใช้แอปพลิเคชันด้านบน:


ใน sdcard ของแอนดรอยด์ย่อมาจากหน่วยความจำภายใน และ extsd ย่อมาจากภายนอก เช่น การ์ด SD ด้วยการแทนที่บรรทัดเหล่านี้ เราได้เปลี่ยนหน่วยความจำประเภทเหล่านี้แล้ว ในบางระบบ โค้ดเหล่านี้อาจดูแตกต่างออกไป ตัวอย่างเช่น:

คุณต้องแทนที่ด้วยวิธีนี้:

หลังจากทำตามขั้นตอนที่อธิบายเสร็จแล้ว ให้รีสตาร์ทแกดเจ็ต ก่อนดำเนินการนี้ โปรดตรวจสอบข้อผิดพลาดในรหัสที่แก้ไขแล้ว เพื่อไม่ให้มีการกะพริบในอนาคต

วิธีที่สองในการเพิ่มหน่วยความจำโดยใช้ Link2SD

แอปพลิเคชันมีอยู่ใน เล่นตลาดและใช้งานได้กับอุปกรณ์ที่รูทเท่านั้น นี้ ตัวจัดการไฟล์ไม่ได้แทนที่หน่วยความจำภายในของอุปกรณ์ด้วยไดรฟ์ภายนอก แต่สามารถถ่ายโอนยูทิลิตี้ใด ๆ ไปยังการ์ด SD ซึ่งช่วยประหยัดทรัพยากรของอุปกรณ์ได้อย่างมาก

ลักษณะเฉพาะของแอปพลิเคชันที่เป็นปัญหาคือตัว MicroSD จะต้องเสียและฟอร์แมตอย่างถูกต้อง ดังนั้น ให้คัดลอกทุกสิ่งที่มีค่าจากการ์ดของคุณไปยังคอมพิวเตอร์ของคุณ และเริ่มแบ่งไดรฟ์ออกเป็นส่วนๆ

แบ่งการ์ดอุปกรณ์ออกเป็นส่วนๆ ด้วย Recovery แบบกำหนดเอง

อุปกรณ์ Android แต่ละเครื่องมีโหมดการกู้คืน แต่วิธีการที่อธิบายด้านล่างนี้เหมาะสำหรับอุปกรณ์ที่ไม่ได้อยู่ในโหมดมาตรฐานเท่านั้น แต่ใช้กับ หากคุณไม่เคยได้ยินเกี่ยวกับ CWM ให้ไปที่ตัวเลือกการแบ่งพาร์ติชันไดรฟ์ที่สอง ต่อไป เราจะบอกคุณถึงวิธีแก้ปัญหา หากมีรายการ Partition SD Card ในโหมดการกู้คืนอุปกรณ์ของคุณ:

การแบ่งพาร์ติชันการ์ด microSD ผ่านคอมพิวเตอร์

เชื่อมต่อการ์ดกับแล็ปท็อปหรือพีซี ในการทำเช่นนี้ คุณสามารถใช้ตัวอ่านการ์ดหรืออุปกรณ์อื่นๆ ได้ ที่สำคัญที่สุด ควรกำหนดให้เป็นไดรฟ์ ไม่ใช่อุปกรณ์สื่อ MTP ไกลออกไป:


เจ้าของ สมาร์ทโฟนซัมซุง รุ่นล่าสุดมีหน่วยความจำภายในที่ค่อนข้างใหญ่ แต่ใน ตัวเลือกงบประมาณหรือ รุ่นแรกทุกอย่างแย่ลงมาก ดังนั้นผู้ใช้จึงมีพื้นที่ไม่เพียงพอสำหรับแอปพลิเคชัน เกม และเพลงที่พวกเขาชื่นชอบ จะทำอย่างไรในกรณีนี้? - มีทางออก แต่เราเตือนคุณทันทีว่าไม่ปลอดภัย

แทนที่ sdcard ภายในด้วยภายนอกภายนอก

ในวิธีแก้ปัญหานี้ เราเห็นการแทนที่ แผนที่ภายในจากด้านนอก. ขั้นตอนนี้เป็นไปได้บนโทรศัพท์จาก ซัมซุงและเราต้องการ รากเต็มและตัวจัดการไฟล์ ไฟล์ระบบ — .

คำแนะนำในการเปลี่ยนหน่วยความจำในสถานที่
1. ทำให้อิ่มด้วยวิธีใดวิธีหนึ่ง
2. ดาวน์โหลดแฮ็คพิเศษจากเซิร์ฟเวอร์ของเราและคลายไฟล์ลงในคอมพิวเตอร์ของคุณ
3. เราทำเสร็จแล้ว การสำรองข้อมูลอุปกรณ์ เช่น ใช้ หรือ go to และ do การสำรองข้อมูลเต็มรูปแบบ(เราขอแนะนำสองตัวเลือก);
4. เราไปที่ RootExplorer และคัดลอกไฟล์ (จากแฮ็ค) ไปยังโฟลเดอร์ system / etc เห็นด้วยกับการแทนที่ ก่อนหน้านี้ ขอแนะนำให้คัดลอกเนื้อหาของโฟลเดอร์ไปยังคอมพิวเตอร์ของคุณ
5. เราโอเวอร์โหลดสมาร์ทและสนุกกับผลลัพธ์

ขั้นตอนย้อนกลับ

ในการย้อนกลับ มีสามวิธี หากวิธีหนึ่งไม่ได้ผล ให้ไปยังวิธีถัดไป คุณไม่จำเป็นต้องทำทุกอย่างพร้อมกัน ขั้นตอนการดำเนินการก็โอเค
1. ทำการเปลี่ยนกลับ โฟลเดอร์ ฯลฯจากคอมพิวเตอร์ของคุณและรีบูต
2. ดาวน์โหลดแฮ็คส่งคืนและอัปโหลดไปยังโฟลเดอร์ระบบ / etc
3. เราทำ การกู้คืนเต็มจากการสำรองข้อมูลครั้งก่อน

เจ้าของอุปกรณ์ Android ส่วนใหญ่ประสบปัญหาขาดพื้นที่จัดเก็บไฟล์ภายในไม่ช้าก็เร็ว การติดตั้งแอปพลิเคชันเป็นประจำจะค่อยๆ ลดจำนวนลง ที่ว่างในแกดเจ็ตซึ่งนำไปสู่การเบรก ผิดงานหรือแม้กระทั่งความล้มเหลวโดยสิ้นเชิงของระบบการทำงานตามปกติ ในกรณีนี้ ให้เปลี่ยนอุปกรณ์ภายใน หน่วยความจำแอนดรอยด์ไปยังการ์ดหน่วยความจำ วิธีการทำเช่นนี้และวิธีอื่น ๆ ในการจัดการกับความรำคาญนั้นเราจะพิจารณาเพิ่มเติม


ก่อนที่จะเจาะลึกการตั้งค่าและถ่ายโอนแอปพลิเคชันไปยังแฟลชไดรฟ์ USB คุณต้องเข้าใจว่าหน่วยความจำประเภทใดที่มีอยู่ในอุปกรณ์ Android ของคุณโดยทั่วไป:

  • การปฏิบัติงาน - จำเป็นสำหรับ การดำเนินการที่ถูกต้องแอปพลิเคชัน โปรแกรม และกระบวนการอื่นๆ ที่ทำงานบนโทรศัพท์หรือแท็บเล็ตของคุณ
  • ROM - เก็บข้อมูลเกี่ยวกับ ระบบปฏิบัติการระหว่างเฟิร์มแวร์และข้อมูลนี้ไม่สามารถถ่ายโอนไปยังสื่อบุคคลที่สาม
  • ภายใน - ติดตั้งแอปพลิเคชันที่นี่โดยอัตโนมัติรวมถึงข้อมูลผู้ใช้ ระบบเหลือพื้นที่ว่างเท่าใดเมื่อติดตั้งซอฟต์แวร์ใหม่
  • การ์ดขยาย - ไดรฟ์ภายนอกซึ่งออกแบบมาเพื่อขยายหน่วยความจำภายในของอุปกรณ์และจัดเก็บแอปพลิเคชัน ข้อมูลผู้ใช้

เหตุใดฉันจึงบันทึกแอปลงในการ์ด SD ไม่ได้

ในแกดเจ็ตจำนวนมาก จะไม่สามารถอนุญาตให้ติดตั้งแอปพลิเคชันใหม่บนแฟลชไดรฟ์ USB ได้โดยอัตโนมัติ สิ่งนี้ใช้กับโทรศัพท์และแท็บเล็ตตั้งแต่เวอร์ชัน 4.4.2 ถึง 6.0.1 ในกรณีนี้ การเปลี่ยนหน่วยความจำภายในด้วยการ์ด SD เป็นสิ่งที่จำเป็น และสามารถทำได้หลายวิธี (รวมถึงการใช้ แอปพลิเคชันบุคคลที่สาม). แต่ก่อนอื่นคุณต้องค้นหาเวอร์ชันของ Android ที่ติดตั้งบนอุปกรณ์ของคุณ ในการทำเช่นนี้ คลิกอย่างต่อเนื่องบน:

  1. เมนู;
  2. การตั้งค่า;
  3. เกี่ยวกับโทรศัพท์.

ในรายการที่เปิดขึ้นจะมีการระบุเวอร์ชันของระบบปฏิบัติการ

โปรแกรมสำหรับถ่ายโอนแอปพลิเคชันไปยังการ์ดหน่วยความจำ

นักพัฒนาดูแลผู้ใช้และสร้างโปรแกรมเพื่อให้หน่วยความจำของแฟลชไดรฟ์เป็นหน่วยความจำหลักบน Android สิ่งนี้มีประโยชน์อย่างยิ่งสำหรับระบบเวอร์ชันเก่า เช่น 2.2 หรือก่อนหน้า

ซอฟต์แวร์ที่ใช้งานสะดวกซึ่งมีเครื่องมือที่จำเป็นทั้งหมดสำหรับการถ่ายโอนข้อมูลจากหน่วยความจำภายในไปยังไดรฟ์ภายนอก อินเทอร์เฟซใช้งานง่ายและเรียบง่าย แอปพลิเคชันที่สามารถย้ายได้จะถูกทำเครื่องหมายด้วยไอคอน เมื่อคลิก ข้อมูลทั้งหมดที่มีเกี่ยวกับแอปพลิเคชันเหล่านั้นจะเปิดขึ้น เช่นเดียวกับ การกระทำที่เป็นไปได้(ย้าย คัดลอก ลบ)

Move2SD Enablerv

ซอฟต์แวร์นี้เป็นที่สนใจของผู้ใช้ด้วยเหตุผลสองประการ ประการแรกมันเข้ากันได้กับ รุ่นต่างๆ Android (รวมถึงรุ่นที่ใหม่กว่า) และประการที่สองคือความสามารถในการถ่ายโอนข้อมูลและแอปพลิเคชันที่มีการทำเครื่องหมายในระบบว่า "ไม่ถูกต้องสำหรับการถ่ายโอน"

อีกหนึ่งการพัฒนาที่น่าสนใจที่ทำให้ชีวิตของผู้ใช้แกดเจ็ต Android ง่ายขึ้น ข้อได้เปรียบหลัก - ติดตั้งง่ายซอฟต์แวร์ (โดยไม่จำเป็นต้องดาวน์โหลดสคริปต์และไลบรารีเพิ่มเติม) และไม่สามารถถ่ายโอนข้อมูลได้ ห้องสมุดที่สมบูรณ์แต่เป็นเพียงบางส่วนเท่านั้น

มีวิธีอื่นใดอีกบ้าง?

มีตัวเลือกอื่น วิธีทำให้การ์ด SD เป็นหน่วยความจำภายในบน Android หากเวอร์ชันของแกดเจ็ตของคุณคือ 2.2 ถึง 4.2.2 คำแนะนำนั้นง่ายมาก คลิกที่:

  1. การตั้งค่า;
  2. หน่วยความจำ;
  3. ดิสก์สำหรับเขียนโดยค่าเริ่มต้น
  4. การ์ด SD

เครื่องหมายถูกหรือวงกลมจะปรากฏขึ้นตรงข้ามกับแฟลชไดรฟ์ ซึ่งบ่งชี้ว่ามีการเปลี่ยนแปลงการตั้งค่า ตอนนี้การติดตั้งแอปพลิเคชันจะไปที่แฟลชไดรฟ์โดยอัตโนมัติ

สำหรับผู้ใช้ แอนดรอยด์คิทแคทและสูงกว่านั้น กระบวนการจะยากและน่าเบื่อมากขึ้น ปัญหาหลักคือคุณจะต้องรูทอุปกรณ์ของคุณ คุณสามารถทำสิ่งนี้ได้ที่บ้าน แต่มีความเสี่ยงที่จะทำให้อุปกรณ์ของคุณกลายเป็น "อิฐ" ซึ่งไม่สามารถซ่อมแซมได้หรือจะมีชีวิตขึ้นมาได้เฉพาะใน ศูนย์บริการโดยมีค่าใช้จ่ายเพิ่มเติม

โปรดจำไว้ว่าการติดตั้งสิทธิ์การรูทด้วยตัวคุณเองจะทำให้การรับประกันบนอุปกรณ์ของคุณเป็นโมฆะและดำเนินการด้วยความเสี่ยงและอันตรายของคุณเอง คุ้มหรือไม่ขึ้นอยู่กับคุณ การถ่ายโอนแอปพลิเคชันใหม่ด้วยตนเองทุกครั้งอาจมีความเสี่ยงน้อยกว่าหรือไม่

คุณคิดอย่างไร? บอกเราในความคิดเห็นหากคุณต้องได้รับสิทธิ์รูทไม่ว่าจะสำเร็จหรือบางทีคุณอาจรู้วิธีอื่นในการเปลี่ยนหน่วยความจำของแท็บเล็ต / โทรศัพท์เป็นการ์ดหน่วยความจำ



มีคำถามหรือไม่?

รายงานการพิมพ์ผิด

ข้อความที่จะส่งถึงบรรณาธิการของเรา: