Internet Windows Android
Kengaytirish

Android -da microSD xotira kartasini ajratish. Android virtual SD -kartasida SD -kartaga yo'l oling

Ba'zi Android qurilmalarida xotira kartalari uchun uyalar mavjud (odatda microSD formatida). Agar qurilmangiz SD -kartalarni qo'llab -quvvatlasa, siz:

  • xotira hajmini oshirish;
  • ba'zi funktsiyalar va ilovalar uchun xaritadan foydalaning.

Qurilmangizda SD -karta uyasi bor yoki yo'qligini bilish uchun ishlab chiqaruvchining veb -saytiga tashrif buyuring.

Eslatma. Ushbu qadamlarning ba'zilari faqat Android 6.0 va undan keyingi versiyalarga ega qurilmalarda bajarilishi mumkin.

SD -kartani qanday o'rnatish kerak

Qadam 1. SD -kartani joylashtiring.
  1. SD -karta uyasi qaerda ekanligini tekshiring.
  2. Telefoningizni o'chiring.
  3. SD -karta tepsisini chiqarib oling yoki qurilmaning orqa qopqog'ini chiqarib oling (modelga qarab). Agar kerak bo'lsa, kartani ushlab turgan yorliqni ko'taring.
  4. SD -kartani uyaga joylashtiring. Agar siz saqlagichni ko'targan bo'lsangiz, uni pastga tushiring.
  5. Mahsulotning SD karta tepsisini yoki orqa qopqog'ini almashtiring.
Qadam 2. SD -kartani yoqing.
  1. SD -karta xabarnomasi paydo bo'lishini kuting.
  2. Ustiga bosing Sozlang.
  3. Kerakli saqlash turini tanlang.
    • Olinadigan saqlash:
      Siz kartani boshqa fayllar bilan birga boshqa fayllarga o'tkazishingiz mumkin (rasm va musiqa kabi). Ilovalarni olinadigan xotiraga ko'chirish mumkin emas.
    • Ichki xotira:
      Karta faqat ushbu qurilma uchun ilovalar va ma'lumotlarni saqlashi mumkin. Agar siz uni boshqa qurilmaga o'tkazsangiz, undagi barcha ma'lumotlar o'chib ketadi.
  4. SD -kartani sozlash uchun ekrandagi ko'rsatmalarga amal qiling.
  5. Ish tugagach, ustiga bosing Tayyor.

SD -kartani qanday ishlatish kerak

Ilovalarni SD -kartaga qanday o'tkazish kerak

Agar siz kartani ichki xotira sifatida ulagan bo'lsangiz, unga ilovalarni o'tkazishingiz mumkin.

Eslatma. Hamma ilovalar ham SD -kartani o'tkaza olmaydi.

Fayllarni SD -kartaga qanday o'tkazish kerak

Agar siz SD -kartani olinadigan xotira qurilmasi sifatida o'rnatgan bo'lsangiz, unga turli xil fayllarni, masalan, musiqa va rasmlarni o'tkazishingiz mumkin. Keyin ular qurilmaning ichki xotirasidan o'chirilishi mumkin.

Qadam 1. Fayllarni SD -kartaga nusxalash.

Qadam 2. Fayllarni ichki xotiradan o'chirib tashlang.

Siz SD -kartaning tarkibini ko'rishingiz va qancha bo'sh joy qolganini ko'rishingiz mumkin.

Agar SD -karta ichki xotira sifatida ishlatilsa

Agar SD -karta olinadigan xotira qurilmasi sifatida ishlatilsa

  1. Xabarlar panelini ochish uchun ekranning yuqori qismidan pastga suring.
  2. SD -karta xabarnomasi ostiga teging Ochiq.

Delfin ma'lumotni virtual SD -kartaga saqlashi mumkin sd.raw... Odatiy bo'lib, u 128 MB hajmda yaratiladi.

Virtual SD -karta Dolphin -da uy qurilishi dasturlari uchun muhim ahamiyatga ega. Project M va Mario Kart Wii maxsus treklari ikkita yaxshi misol bo'ladi, chunki ba'zi uy qurilishi dasturlari faqat ular ishlab chiqarilgan haqiqiy uskunaning SD -kartasida saqlangan fayllar yordamida ishlashi mumkin.

Tarkibi

Virtual SD -kartani yaratish

Katta uy qurilishi dasturlari uchun kamida 1 Gbayt hajmli, masalan, Project M va eng yaxshi moslik uchun 2 Gbaytdan oshmaydigan hajm yaratish tavsiya etiladi, chunki ba'zi bir uy qurilishi dasturlari bilan SDHC kartasi ostida ishlashga to'g'ri keladigan muammolar mavjud. ...

Buyruqlar satri va bajariladigan fayllar

WinImage ishonchsizdir, chunki g'alati, bu vaqtincha sinxronizatsiya va boshqa kutilmagan muammolarni keltirib chiqaradi. ImDisk yaxshi bo'ladi.

Virtual SD -kartani o'rnatish va tahrirlash bo'yicha tezkor qo'llanma ImDisk virtual disk uchun haydovchi:

  1. Sichqonchaning o'ng tugmachasini bosing sd.raw faylni bosing va keyin bosing "ImDisk virtual disk sifatida o'rnatish" kontekst menyusidan.
  2. Belgilash katakchasi Olib tashlanadigan vosita keyin urish "OK"... Oldindan belgilangan haydovchi harfi va boshqa hamma narsa yaxshi bo'ladi.
    • Virtual SD -karta endi "Olinadigan disk" ko'rinishida paydo bo'ladi, unda mahalliy Explorer oynasida o'qish va yozish mumkin.
  3. Virtual SD-kartani tahrirlashni tugatgandan so'ng, uni "O'chiriladigan disk" ustiga o'ng tugmasini bosib, keyin ajratib oling. "ImDisk virtual diskini ajratib oling" kontekst menyusidan.
    • Dolphin bilan ishlatishdan oldin virtual SD -kartani demontaj qilish kerak.

Delfinlarni sozlash

Tanlovlar> Konfiguratsiya ...> Wii> ga o'ting va yoqing SD -kartani joylashtiring.

Foydalanish

Homebrew dasturi bilan

Homebrew ilovasi uchun ishlatiladigan tashqi fayllar ichida saqlanishi kerak sd.raw va homebrew ilovasining o'zi ( boot.elf yoki boot.dol) Dolphin yuklanishi uchun uning tashqarisida bo'lishi kerak. M loyihasi, masalan, SD ildizidan yuklanadi \ loyiha \ va Dolphin M loyihasini ishga tushirishi kerak \ apps \ projectm \ boot.elf, YO'Q virtual SD -kartada. Qulaylik uchun, virtual SD -kartaning ichki va tashqi tomonlarida bir xil nusxalarda bo'lish idealdir.

Wii uchun homebrew ekspluatatsiyasi orqali virtual SD -kartadan homebrew dasturini ishga tushirish mumkin.

Wii o'yinini ishga tushirish dasturi faqat ma'lum bir Wii o'yini standart ISO sifatida o'rnatilgan bo'lsa ishlaydi. Delfin o'yinlari ro'yxatida Wii-ning istalgan o'yinida kontekst menyusini oching (o'ng tugmasini bosing) va ustiga bosing Standart ISO sifatida o'rnating... Buni Dolphin bilan uy qurilishi dasturini yuklamasdan oldin qiling.

Netplay uchun

Agar biror narsa yaratilgan o'lchamidan qat'i nazar, klonlanmagan virtual SD -kartani va uning ildizida bir xil fayl / papka tuzilmalarini o'qisa, Netplay oxir -oqibat sinxronlanadi. Buning oldini olish uchun, sd.raw netplayni boshlashdan oldin xost kompyuteridan birlashtiruvchi kompyuterlarga ko'chirilishi kerak. Agar virtual SD -karta oflayn rejimda yoki yozish blokirovkasi o'chirilgan holda ishlatilgan bo'lsa, MD5 nazorat yig'indisi o'zgaradi (fayllarning "kirish sanasi" virtual SD -kartadan farq qiladi), lekin bu sinxronizatsiyaga olib kelmaydi. boshqa joydan kelgan yoki "boshqacha" deb o'zgartirilgan fayllarga bo'ysunadi.

Wii o'yinni ishga tushirish ilovasi uchun har ikki tomonning foydalanuvchilari ham o'z o'yinlari ro'yxatida homebrew ilovasi va o'yinning bir xil nusxalariga ega bo'lishlari kerak, so'ngra oldingi bo'limda aytib o'tilganidek, o'yinni standart ISO sifatida o'rnatishlari kerak.

Raqobat dasturini ishlab chiqishda ma'lumotlar bazasini saqlash muammosiga duch keldim. Muammo tashqi xotira kartasini qanday aniqlash mumkin edi. Umuman olganda, tarmoqdagi qidiruv aniq javob bermadi. Shuning uchun, men topgan barcha natijalarni birlashtirib, men o'z sinfimni yig'dim. Agar kimdir qiziqsa, kesim ostiga qarang.

Shunday qilib, nazariyadan boshlaylik.

Terminologiya

Google bizga quyidagi tushunchalar borligini aytadi:
  1. Ichki ( ichki) xotira - telefoningizga o'rnatilgan xotira kartasining bir qismi. Odatiy bo'lib, dastur papkasi boshqa ilovalar tomonidan kirishdan himoyalangan (Ichki xotiradan foydalanish).
  2. Tashqi ( tashqi) xotira - bu umumiy "tashqi xotira", ya'ni. u o'rnatilgan xotiraning bir qismi yoki o'chirilgan qurilma bo'lishi mumkin. Odatda, bu o'rnatilgan xotiraning bir qismi, chunki men qurilmani o'chirishni ko'rdim oxirgi marta Android 2.2-da, o'rnatilgan xotira taxminan 2 Gb bo'lib, ulangan xotira tashqi bo'lib qoldi (Tashqi xotiradan foydalanish).
  3. O'chirilgan ( olinadigan) xotira - "jarrohlik" aralashuvisiz qurilmadan olib tashlanishi mumkin bo'lgan barcha omborlar.

KitKat 4.4 -dan oldin, API tashqi xotiraga yo'l olish funktsiyalarini ta'minlamagan. Ushbu versiyadan (API 19) boshlab, umumiy mavhum fayl funktsiyasi paydo bo'ldi getExternalFilesDirs(String turi), ichki va tashqi xotiraga yo'llari bo'lgan qatorlar qatorini qaytaradi. Ammo uyaga o'rnatilgan bizning SD -kartamiz haqida nima deyish mumkin? Yana biz unga yo'l topa olmaymiz.

qidiruv natijalari

Savolga javob berish uchun men hamma narsani biladigan Googlega murojaat qildim. Lekin u ham menga aniq javob bermadi. Tashqi xotiraga olib keladigan standart funktsiyalarni ishlatishni aniqlashning ko'p variantlari ko'rib chiqilgan, lekin ular olinadigan saqlash qurilmalari bilan, qurilmani o'rnatish qoidalariga ishlov berishga aloqasi yo'q (Android Linux yadrosida ishlaydi). Oxirgi hollarda, o'rnatilgan qurilmalari bo'lgan papkaga "qattiq simli" yo'llar ishlatilgan turli xil versiyalar bu katalog boshqacha). O'rnatish qoidalari versiyadan versiyaga o'zgarishini unutmang.

Oxir -oqibat, men olgan barcha bilimlarni birlashtirishga qaror qildim va biz uchun tashqi va olinadigan qurilmalarga yo'llarni qaytaradigan o'z sinfimni yozdim.

Kodning tavsifi

Sinf yaratildi Qurilma qurilmasi, bu qurilmaning yo'lini, qurilma turini va ma'lum xashni o'z ichiga oladi.
Qurilmalarning ikki turi mavjud ( ichki xotira Men unga tegmadim, chunki unga tizim API orqali kirish mumkin).

MountDeviceType umumiy ro'yxati (EXTERNAL_SD_CARD, REMOVABLE_SD_CARD)
Va sinf yaratildi Saqlash yordamchisi, mavjud xotira kartalarini qidiradi.

StorageHelper klassi ikkita qidiruv usulini amalga oshiradi - tizim muhiti orqali ( Atrof -muhit) va Linux yordam dasturidan foydalanish o'rnatmoq, aniqrog'i uni amalga oshirish natijasi.

Birinchi usul - atrof -muhit
Atrof -muhit bilan ishlashda men tashqi xotira haqida ma'lumot olish uchun standart getExternalStorageDirectory () funktsiyasidan foydalanaman. Xotira haqida ma'lumot olish uchun men muhit o'zgaruvchisidan foydalanaman " SECONDARY_STORAGE".

Tashqi xotira har doim bitta va odatda har doim bo'ladi, shuning uchun biz uni o'qilishi uchun tekshiramiz, xeshni hisoblaymiz va eslaymiz. Olib tashlanadigan xotira ko'p bo'lishi mumkin, shuning uchun hosil bo'ladigan satrni ajratuvchi orqali ajratish va har bir qiymatni tekshirish kerak.

FillDevicesEnvirement funktsiyasi

String yo'li = android.os.Environment.getExternalStorageDirectory () .getAbsolutePath (); if (! path.trim (). isEmpty () && android.os.Environment.getExternalStorageState (). equals (android.os.Environment.MEDIA_MOUNTED)) (testAndAdd (path, MountDeviceType.EXTERNAL_SD_CARD);) // O'chirishni oling rawSecondaryStoragesStr = System.getenv ("SECONDARY_STORAGE"); if (rawSecondaryStoragesStr! = null &&! rawSecondaryStoragesStr.isEmpty ()) (// Barcha ikkinchi darajali SD-kartalar oxirgi String rawSecondaryStorages = rawSecondaryStoragesStr .split (File.pathSeparator)) uchun


Eritma stackoverflow -dan olinadi. Javob qayerdadir.
Ikkinchi usul - o'rnatish
Tizim menga uzoq vaqt davomida o'chirilgan xotiraga yo'lni aytib bera olmagani uchun, o'rnatilgan qurilmalar tomonga qarashga qaror qildim. Tizimda tashqi qurilmalarni o'rnatish qoidalarini tavsiflovchi konfiguratsiya fayllari mavjud. Hammasi yaxshi bo'lardi, lekin Android 4. versiyasida * bu fayl oddiy odamlar uchun mavjud emas, shuning uchun men bu usulni ko'rib chiqmayman.

Keling, montaj yordam dasturiga qaytaylik. Parametrlarsiz ishlaganda, buyruq o'rnatilgan fayl tizimlari ro'yxatini qaytaradi. O'chiriladigan qurilmalar odatda FAT fayl tizimining formatiga ega, shuning uchun biz xarakterli qatorlarni tanlaymiz ". yog '". Tashqi xotira parametr bilan tavsiflanadi" sug'urta".

E'tibor bering: bu usuldan foydalanganda har doim ham to'g'ri kelavermaydi (ehtimol men biror narsani hisobga olmaganman) o'rnatilgan qurilmalarning turlari aniqlanadi. Men farqni payqadim turli xil versiyalar Android. Shuning uchun, bu usul qo'shimcha sifatida ishlatilishi mumkin.

FillDevicesProcess funktsiyasi

harakat qilib ko'ring (Runtime runtime = Runtime.getRuntime (); proc = runtime.exec ("mount"); try (is = proc.getInputStream (); isr = new InputStreamReader (is); br = new BufferedReader (isr); while ( (satr = br.readLine ())! = null) (agar (chiziq.tarkibi ("xavfsiz"))) davom etsa; agar (chiziq.tarkibida ("asec")) davom etsa; agar (chiziq.tarkibi ("semiz") ) (// TF kartasi String ustunlari = line.split (""); if (ustunlar! = Null && ustunlar. Uzunlik> 1) (testAndAdd (ustunlar, MountDeviceType.REMOVABLE_SD_CARD);)) if if (line.contains (" sug'urta ")) (// ichki (Tashqi) // saqlash String ustunlari = line.split (" "); agar (ustunlar! = null && ustunlar. uzunlik> 1) (// mount = mount.concat (ustunlar +") \ n "); testAndAdd (ustunlar, MountDeviceType.EXTERNAL_SD_CARD);)))) nihoyat (...)) tutish (Istisno e) (...)

Manba kodi butun sinf boshqa joyda emas. Shu kunlarning birida men uni gitHub -da joylashtirishga harakat qilaman.

Yana kim qanday usullardan foydalanadi?

Teglar: teglar qo'shish

Bu vosita telefon yoki planshetning SD -kartasida / USB -diskida bo'limlar yaratish va boshqarish imkonini beradi. Siz ko'proq qo'shishingiz mumkin tasodifiy kirish xotirasi almashtirish bo'limini yaratish orqali qurilmaga. Bundan tashqari, siz SD -kartaning fayl tizimiga zarar etkazishingiz mumkin. Faqat "asosiy" bo'lim turini qo'llab -quvvatlaydi.
Vazifalar:

  • bo'limlarni yaratish;
  • bo'limlarni o'chirish;
  • shikastlangan fayl tizimlarini tiklash.

Qo'llab -quvvatlanadigan fayl tizimlari:

  • FAT16, FAT32, EXT2, EXT3, EXT4, SWAP, NTFS (MoalBoal versiyasidan boshlab).

Talablar:

  • Ildiz telefoni;
  • Busybox mavjudligi;
  • ichki xotiraga o'rnatish;
  • dasturni ishlatishdan oldin SD -kartani ajratib oling.

Dastur yordamida bo'limlarni yaratish bo'yicha ko'rsatmalar

Birinchi narsa - barcha qimmatli fayllarni kompyuteringizga flesh -diskdan o'tkazish, ya'ni hamma narsa flesh -diskdan o'chiriladi.

- Dasturni oching

Yaratish bo'limida "+" qo'shish belgisini ikki marta bosing.

Birinchi bo'lim "1 -qism" Fat32 -ni, ikkinchisi "2 -qism" kerakli ext2 / 3/4 yoki almashtirishni tanlang.
- Har bir bo'limning o'lchamini belgilash uchun slayderdan foydalaning, "Format" belgisini qo'yish kerak.

Biz "OK" ni tasdiqlaymiz

Hammasi tayyor.

USB flesh -diskini qanday qaytarish kerak umumiy hajmi
Agar siz USB flesh -diskidan ikkinchi bo'limni o'chirishga qaror qilsangiz, buni qilishingiz mumkin.
- Telefon sozlamalariga o'ting, "Xotira" va "SD -kartani chiqarish" tugmasini bosing.
- Dasturni oching
- Yaratish bo'limida "+" qo'shish belgisini bir marta bosing
- "1 -qism" da Fat32 -ni tanlang, slayderni flesh -diskning to'liq hajmiga o'tkazing, "Format" katagiga belgi qo'ying.

Yumshoq tugmachani bosing, "O'zgarishlarni qo'llash".

Xotira kartasini bir nechta bo'limlarga bo'lish zarurati odatda Android telefonida / planshetida ilovalarni o'rnatish uchun ichki xotira kam bo'lganda paydo bo'ladi. Shunga o'xshash operatsiyani bajarish orqali siz telefoningizdagi joyni bo'shatishingiz mumkin, masalan, ikkinchi bo'limga o'tish orqali microSD karta... Ilgari, biz xotira kartasida bo'linmalarni qanday yaratish va birlashtirish mumkinligini tasvirlab berdik.

Xotira kartalarini ajratishni qo'llab -quvvatlaydigan ma'lum bir telefon / planshet uchun tiklanishni topish har doim ham mumkin emas, shuning uchun ushbu maqolada sizga buni Android ilovasi - AParted yordamida qanday qilish kerakligini aytib beramiz.

Ushbu ilova quyidagi funktsiyalarni taqdim etadi (rasmiy hujjatlardan):

  • Android qurilmasining tashqi / ichki xotirasini ajratish.
  • Android qurilmasining tashqi / ichki xotirasini formatlash.
  • Bo'limlarni olib tashlash.
  • Fayl tizimidagi xatolarni tekshirish va tuzatish.
  • Bo'limlarning hajmini o'zgartirish.
  • Fayl tizimlarini yangilash.

Ushbu maqolada biz ulardan faqat birinchisidan foydalanamiz.

Qatlamga tayyorgarlik

Buzilishdan oldin, albatta bajaring zaxira siz uchun muhim ma'lumotlar (fotosuratlar, videolar va boshqalar), chunki bo'linish jarayonida barcha fayllar xotira kartasidan o'chiriladi.

Telefoningizda mavjudligiga ishonch hosil qiling, u holda AParted ishlamaydi.

Dasturni ishga tushirishdan oldin siz xotira kartasini ajratib qo'yishingiz kerak Android sozlamalari... Buning uchun "Sozlamalar> Xotira" ga o'ting, ulangan microSD karta bo'limida "Xavfsiz olib tashlash" bandini bosing va amalni tasdiqlang.

Kelgusi bo'limlarni belgilash

AParted dasturini ishga tushiring, "CREATE" ko'rinishida siz xotira kartasining to'rtburchaklar ko'rinishidagi ikkita grafik ko'rinishini ko'rasiz: "SD xotira kartasi msdos bo'linish jadvali" deb nomlangan pastki to'rtburchaklar joriy bo'lim tartibini ko'rsatadi va yuqori qismi "Yangi" msdos bo'linma jadvallari " - microSD kartasidagi bo'lajak bo'limlar diagrammasi.

Birinchi bo'limni qo'shish uchun "QO'SHISH" tugmasini bosing va slayder yordamida uning hajmini belgilang. Bu bo'lim telefon / planshetda rasmlar, musiqa va boshqalar uchun tashqi xotira sifatida mavjud bo'ladi. Aniqroq taqsimlash uchun, paydo bo'lgan maydonda MB bilan raqamni bosing, megabaytda aniq hajmini ko'rsating va "OK" tugmasini bosish orqali o'zgarishlarni tasdiqlang. "Format" katagiga belgi qo'ying va fayl tizimi"fat32" o'zgarmadi.

MicroSD kartasiga kelajakda Android qurilmasining tizim xotirasini kengaytirish vazifasini o'taydigan ikkinchi bo'limni qo'shish uchun yana "ADD" tugmasini bosing. Slayder yordamida qolgan bo'sh joyni tanlang, "Format" katagiga belgi qo'ying, "fat32" yorlig'ini bosing va quyidagi fayl tizimlaridan birini tanlang: "ext2", "ext3" yoki "ext4".

Va bu erda eng qiziq narsa boshlanadi, "ext4" variantini tanlash tavsiya etiladi, lekin siz ushbu fayl tizimida bo'lim yaratolmasligingizning bir qancha sabablari bor: yadro / proshivka Android tizimlari, xotira kartasining klassi / ishlab chiqaruvchisi (sifati) va boshqalar.

Shunday qilib, tajriba o'tkazing, avval "ext4", keyin "ext3" va "ext2" bilan bo'lim yaratishga harakat qiling. Axir, Link2SD dasturi yuqoridagi barcha fayl tizimlarini qo'llab -quvvatlaydi.

Yuqoridagi amallarni bajarganingizdan so'ng, "Yangi msdos bo'linish jadvallari" deb nomlangan to'rtburchakda xotira kartangizning bo'linmalarining diagrammasi ko'rsatilishi kerak.

Chiqib ketish

Xotira kartasiga yangi bo'limlar tartibini qo'llash uchun "QO'LLANISH" tugmasini bosing. AParted sizni olinadigan ommaviy axborot vositasidagi barcha ma'lumotlar o'chib ketishi haqida ogohlantiradi.

Bundan tashqari, xotira kartasining bo'linmalarini ajratish va formatlash jarayoni ko'rsatiladi, uni tugatgandan so'ng, media ajratish natijasi "msdos bo'limlar jadvalining SD xotira kartasi" pastki grafigida ko'rsatiladi. Telefon / planshetning "Sozlamalar> Xotira" ga yana o'ting va tashqi xotira bo'limida "SD -kartani ulash" bandini bosing. Android tizimi tomonidan microSD kartasini ulab va tahlil qilib bo'lgach, uning xotirasi siz o'rnatgan hajmgacha kamayganini ko'rasiz.

Agar telefon holatida SD -karta buzilganligi haqida xabar paydo bo'lsa, iltimos, Android tizimini qayta ishga tushiring, qayta ishga tushirilgandan so'ng xotira kartasi avtomatik ravishda ulanishi kerak.

Link2SD -ni sozlash

O'rnatish va ishga tushirish. Dastur avtomatik ravishda xotira kartasida ikkinchi bo'lim mavjudligini aniqlab, skriptni yaratish so'rovini berishi kerak. Ro'yxatda, AParted ilovasida xotira kartasini ajratish paytida ko'rsatgan ikkinchi bo'limning fayl tizimini tanlang, so'rovni tasdiqlang va operatsiyadan so'ng "Qurilmani qayta ishga tushirish" tugmasini bosing.

Android tizimini qayta ishga tushirgandan so'ng, siz ilovalarni qurilma xotirasidan tashqi xotira kartasining ikkinchi bo'limiga o'tkazishingiz mumkin.