Android sanal hafıza kartı. Android'de microSD hafıza kartının dökümü. Gözleme hazırlığı

Bu araç, telefonunuzun veya tabletinizin SD kartında/USB sürücüsünde bölümler oluşturmanıza ve yönetmenize olanak tanır. Takas bölümü oluşturarak cihazınıza daha fazla RAM ekleyebilirsiniz. Hasarlı SD kart dosya sistemlerini de onarabilirsiniz. Yalnızca "ana" bölüm türünü destekler.
Fonksiyonlar:

  • bölümler oluşturmak;
  • bölümlerin silinmesi;
  • hasarlı dosya sistemlerinin kurtarılması.

Desteklenen dosya sistemleri:

  • FAT16, FAT32, EXT2, EXT3, EXT4, SWAP, NTFS (MoalBoal sürümünden başlayarak).

Gereksinimler:

  • Kök telefon;
  • Busybox'ın kullanılabilirliği;
  • dahili belleğe kurulum;
  • Uygulamayla çalışmaya başlamadan önce SD kartın bağlantısını kesin.

Programı kullanarak bölümlerin nasıl oluşturulacağına ilişkin talimatlar

İlk şey, tüm değerli dosyalarınızı flash sürücüden PC'nize aktarmaktır, yani bundan sonra flash sürücüdeki her şey silinecektir.

- Programı açın

Oluştur bölümünde artı işaretini “+” çift tıklayın

İlk bölüm "Part 1" Fat32'yi seçin, ikinci "Part 2" ise istediğiniz ext2/3/4'ü seçin veya değiştirin.
- Her bölümün boyutunu ayarlamak için kaydırıcıyı kullanın; “Format” onay kutusu işaretlenmelidir.

"Tamam"ı onaylayın

Her şey hazır.

Bir flash sürücüyü tam kapasiteye nasıl döndürebilirim?
İkinci bölümü flash sürücüden silmeye karar verirseniz bunu yapabilirsiniz.
- Telefon ayarlarına gidin, “Bellek”e gidin ve “SD kartı çıkar”a tıklayın.
- Programı açın
- Oluştur bölümünde “+” artı işaretini bir kez tıklayın
- "Bölüm 1"de Fat32'yi seçin, kaydırıcıyı flash sürücünün tam kapasitesine ayarlayın, "Format" onay kutusu işaretlenmelidir.

Yazılım tuşu, "değişiklikleri uygula"ya tıklayın

Bellek kartını birkaç bölüme ayırma ihtiyacı genellikle Android telefon/tabletin uygulamaları yüklemek için yeterli dahili belleğe sahip olmaması durumunda ortaya çıkar. Benzer bir işlemi gerçekleştirerek, örneğin microSD kartın ikinci bölümüne geçerek telefonunuzda yer açabilirsiniz. Daha önce, ve kullanarak bir hafıza kartında nasıl bölüm oluşturabileceğinizi/birleştirebileceğinizi anlatmıştık.

Bellek kartı bölümlemeyi destekleyen belirli bir telefon/tablet için kurtarma bulmak her zaman mümkün değildir, bu nedenle bu makalede bunu Android uygulaması AParted'ı kullanarak nasıl yapacağınızı anlatacağız.

Bu uygulama aşağıdaki özellikleri sağlar (resmi belgelerden):

  • Bir Android cihazın harici/dahili belleğinin bölümlenmesi.
  • Bir Android cihazının harici/dahili belleğini biçimlendirme.
  • Bölümleri kaldırma.
  • Dosya sistemi hatalarını kontrol etme ve düzeltme.
  • Bölümleri yeniden boyutlandırma.
  • Dosya sistemlerini güncelleme.

Bu yazıda bunlardan sadece ilkini kullanacağız.

Gözleme hazırlığı

Bölme işlemi sırasında tüm dosyalar hafıza kartından silineceğinden, bölmeden önce önemli verilerinizin (fotoğraflar, videolar vb.) yedek bir kopyasını aldığınızdan emin olun.

Bunun telefonunuzda mevcut olduğundan emin olun; o olmadan AParted çalışmaz.

Uygulamayı başlatmadan önce Android ayarlarından hafıza kartını devre dışı bırakmalısınız. Bunu yapmak için, bağlı microSD kart bölümünde "Ayarlar > Bellek" seçeneğine gidin, "Güvenle Kaldır" öğesine tıklayın ve işlemi onaylayın.

Gelecek bölümlerin düzeni

AParted uygulamasını başlatın, "CREATE" sekmesinde hafıza kartının dikdörtgen şeklinde iki grafik gösterimini göreceksiniz: "SD hafıza kartı msdos bölüm tabloları" yazan alt dikdörtgen, geçerli bölüm düzenini görüntüler ve üstteki dikdörtgen, mevcut bölüm düzenini görüntüler. bir "Yeni msdos bölüm tabloları" - microSD karttaki gelecekteki bölümlerin düzeni.

İlk bölümü eklemek için "EKLE" düğmesine tıklayın ve boyutunu belirlemek için kaydırıcıyı kullanın. Bu bölüm telefon/tablette fotoğraf, müzik vb. için harici bellek olarak kullanılabilecektir. Daha doğru bir döküm için MB ile numaraya tıklayın, beliren alana megabayt cinsinden tam boyutu girin ve “Tamam”a tıklayarak değişiklikleri onaylayın. "Format" onay kutusunu etkin ve "fat32" dosya sistemini değiştirmeden bırakın.

Gelecekte Android cihazının sistem belleğinin bir uzantısı olarak hizmet verecek olan microSD karta ikinci bir bölüm eklemek için tekrar "EKLE" düğmesine tıklayın. Kalan tüm alanı seçmek için kaydırıcıyı kullanın, "Biçim" onay kutusunu etkin bırakın, "fat32" yazısına tıklayın ve şu dosya sistemlerinden birini seçin: "ext2", "ext3" veya "ext4".

Ve eğlencenin başladığı yer burasıdır, "ext4" seçeneğini seçmeniz önerilir, ancak bu dosya sisteminde bir bölüm oluşturamamanızın birkaç nedeni vardır: Android sisteminin çekirdeği/ürün yazılımı, hafıza kartının sınıfı/üreticisi (kalite), vb.

Bu nedenle, önce "ext4", ardından "ext3" ve "ext2" ile bir bölüm oluşturmayı deneyin. Sonuçta Link2SD uygulaması yukarıdaki dosya sistemlerinin tümünü destekler.

Yukarıdaki işlemleri gerçekleştirdikten sonra “Yeni msdos bölüm tabloları” etiketli dikdörtgenin hafıza kartınızın gelecekteki bölümlerinin düzenini göstermesi gerekir.

Gözlem gerçekleştirme

Yeni bölümlerin düzenini hafıza kartına uygulamak için "UYGULA" düğmesine tıklayın. AParted uygulaması, çıkarılabilir ortamdaki tüm verilerin silineceği konusunda sizi uyaracaktır.

Daha sonra, hafıza kartı bölümlerini bölümleme ve biçimlendirme işlemi görüntülenecek ve bunun tamamlanmasının ardından alt grafik "SD hafıza kartı msdos bölüm tablosu" medya bölümlemenin sonucunu görüntüleyecektir. Tekrar telefonunuzun/tabletinizin “Ayarlar > Depolama” kısmına gidin ve harici hafıza bölümünde “SD kartı bağla” seçeneğine tıklayın. MicroSD kartı Android sistemine bağlayıp analiz ettikten sonra hafızasının ayarladığınız boyuta düştüğünü göreceksiniz.

Telefon durumu SD kartın hasarlı olduğunu belirten bir mesaj gösteriyorsa, Android sistemini yeniden başlatın, yeniden başlattıktan sonra hafıza kartının otomatik olarak bağlanması gerekir.

Link2SD'yi ayarlama

Kurun ve çalıştırın. Program, hafıza kartında ikinci bir bölümün varlığını otomatik olarak algılamalı ve sizden bir bağlama komut dosyası oluşturmanızı istemelidir. AParted uygulamasında hafıza kartını bölümlendirirken belirttiğiniz ikinci bölümün dosya sistemini listeden seçin, isteği onaylayın ve işlemi tamamladıktan sonra “Cihazı yeniden başlat” butonuna tıklayın.

Android sistemini yeniden başlattıktan sonra uygulamaları cihaz hafızasından harici hafıza kartının ikinci bölümüne aktarabilirsiniz.

Yarışma uygulaması geliştirirken veritabanı depolama sorunuyla karşılaştım. Sorun harici hafıza kartını nasıl tanımlayacağımdı. Genel olarak internette yapılan bir arama kesin bir cevap vermedi. Bu nedenle bulunan tüm sonuçları birleştirerek sınıfımı topladım. İlgilenen varsa kesiğin altına baksın.

Öyleyse teoriyle başlayalım.

Terminoloji

Google bize aşağıdaki kavramların olduğunu söylüyor:
  1. Dahili ( dahili) hafıza, telefona yerleşik hafıza kartının bir parçasıdır. Varsayılan olarak kullanıldığında, uygulama klasörü diğer uygulamaların erişimine karşı korunur (Dahili Depolamayı Kullanma).
  2. Harici ( harici) bellek genel "harici depolamadır", yani. bu, dahili belleğin bir parçası veya çıkarılabilen bir cihaz olabilir. Genellikle bu, yerleşik belleğin bir parçasıdır, bir cihazın en son kaldırıldığını gördüğümde, yerleşik belleğin yaklaşık 2 GB olduğu ve bağlı belleğin harici hale geldiği Android 2.2'deydi (Harici Depolamayı Kullanma).
  3. Silindi ( çıkarılabilir) hafıza - "cerrahi" müdahaleler olmadan cihazdan çıkarılabilen tüm depolama.

KitKat 4.4'ten önce API, harici bellek yollarının alınmasına yönelik işlevsellik sağlamıyordu. Bu sürümden (API 19) başlayarak, genel özet Dosyası işlevi ortaya çıktı getExternalFilesDirs(Dize türü), dahili ve harici belleğe giden yolları içeren bir dizi dize döndürür. Peki yuvaya takılan SD Kartımız ne olacak? Yine ona giden yolu alamıyoruz.

arama sonuçları

Soruyu cevaplamak için her şeyi bilen Google'a döndüm. Ama bana da net bir cevap vermedi. Harici belleğe yol açan standart işlevlerin kullanılmasından, kaldırılan depolama aygıtlarıyla hiçbir ilgisi olmayan, aygıt montaj kurallarının işlenmesine (Android, Linux çekirdeğinde çalışır) kadar pek çok tanım seçeneği dikkate alındı. İkinci durumlarda, takılı aygıtların bulunduğu klasöre giden "kablolu" yollar kullanıldı (bu dizin farklı sürümlerde farklıdır). Montaj kurallarının versiyondan versiyona değiştiğini unutmayın.

Sonunda edindiğim tüm bilgileri birleştirmeye karar verdim ve harici ve silinmiş aygıtların yollarını döndürebilen kendi sınıfımı yazdım.

Kod açıklaması

Bir sınıf oluşturuldu Cihaz Montajı, cihazın yolunu, cihaz türünü ve karma değerini içerir.
İki tür cihaz vardır (sistem API'sinden erişilebildiği için dahili belleğe dokunmadım).

Genel numaralandırma MountDeviceType ( EXTERNAL_SD_CARD, REMOVABLE_SD_CARD )
Ve sınıf oluşturuldu Depolama Yardımcısı Kullanılabilir hafıza kartlarını arayan.

StorageHelper sınıfı, sistem ortamı aracılığıyla ( Çevre) ve Linux yardımcı programını kullanma montaj veya daha doğrusu infazının sonucu.

Birinci yöntem - Çevre
Ortamla çalışırken harici bellek hakkında bilgi edinmek için standart getExternalStorageDirectory() işlevini kullanıyorum. Silinen hafıza hakkında bilgi almak için ortam değişkenini kullanıyorum " İKİNCİL DEPOLAMA".

Her zaman bir harici bellek vardır ve genellikle her zaman vardır, bu nedenle okunabilirliğini kontrol ederiz, karmayı hesaplarız ve hatırlarız. Silinecek çok fazla bellek olabilir, bu nedenle ortaya çıkan dizeyi sınırlayıcıya göre bölmek ve her değeri kontrol etmek gerekir.

işlev fillDevicesEnvirement

Dize yolu = 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); ) // Sökücüyü alın String rawSecondaryStoragesStr = System.getenv("SECONDARY_STORAGE"); if (rawSecondaryStoragesStr != null && !rawSecondaryStoragesStr.isEmpty()) ( // Tüm İkincil SD Kartlar diziye bölünür final String rawSecondaryStorages = rawSecondaryStoragesStr .split(File.pathSeparator); for (String rawSecondaryStorage: rawSecondaryStorages) ( testAndAdd(rawSecondaryStorage, MountDeviceType.REMOVABLE_SD_CARD); )) )


Çözüm stackoverflow'tan alındı. Cevap aşağıda bir yerde.
İkinci yöntem - montaj
Uzun süre sistemin bana hafızanın silinmesine giden yolu söylemesini sağlayamadığım için takılı cihazların yönüne bakmaya karar verdim. Sistemde harici aygıtların montajına ilişkin kuralları açıklayan yapılandırma dosyaları bulunur. Her şey yoluna girecek, ancak Android 4.* sürümünde sıradan ölümlülerin bu dosyaya erişimi yok, bu yüzden bu yöntemi dikkate almayacağım.

Mount yardımcı programına geri dönelim. Parametreler olmadan çalıştırıldığında komut, bağlanan dosya sistemlerinin bir listesini döndürür. Silinen cihazlar genellikle FAT dosya sistemi formatında olduğundan, " karakteristiğini içeren satırları vurgulayacağız. yağ". Harici bellek parametresi ile karakterize edilecektir " sigorta".

Not: Bu yöntemi kullanırken, monte edilen cihazların türleri her zaman doğru şekilde belirlenmez (büyük olasılıkla bir şeyi hesaba katmadım). Android'in farklı sürümlerinde farkı fark ettim. Bu nedenle bu yöntem ek bir yöntem olarak kullanılabilir.

fillDevicesProcess işlevi

try ( Çalışma zamanı çalışma zamanı = Runtime.getRuntime(); proc = runtime.exec("mount"); try ( is = proc.getInputStream(); isr = new inputStreamReader(is); br = new BufferedReader(isr); while ( (line = br.readLine()) != null) ( if (line.contains("secure")) devam et; if (line.contains("asec")) devam et; if (line.contains("fat") ) (// TF kartı String sütunlar = line.split(" "); if (sütunlar != null && sütunlar.uzunluk > 1) ( testAndAdd(sütunlar, MountDeviceType.REMOVABLE_SD_CARD); ) ) else if (line.contains(" sigorta")) (// internal(Harici) // depolama Dize sütunları = line.split(" "); if (columns != null && sütunlar.uzunluk > 1) ( // mount = mount.concat(columns + " \n"); testAndAdd(columns, MountDeviceType.EXTERNAL_SD_CARD); ) ) ) ) nihayet ( ... ) ) catch (Exception e) ( ... )

Sınıfın tamamının kaynak kodu henüz hiçbir yerde bulunmuyor. Bir gün bunu gitHub'ta yayınlamaya çalışacağım.

Başka kimler hangi yöntemleri kullanıyor?

Etiketler: Etiket ekleyin

Bazı Android cihazlarda hafıza kartları için yuvalar bulunur (genellikle microSD formatı). Cihazınız SD kartları destekliyorsa şunları yapabilirsiniz:

  • bellek kapasitesini artırın;
  • Kartı bazı işlevler ve uygulamalar için kullanın.

Cihazınızda SD kart yuvası olup olmadığını öğrenmek için üreticinin web sitesini ziyaret edin.

Not. Bu adımlardan bazıları yalnızca Android 6.0 ve sonraki sürümleri çalıştıran cihazlarda gerçekleştirilebilir.

SD kart nasıl takılır

Adım 1: SD kartı takın.
  1. SD kart yuvasının nerede bulunduğunu kontrol edin.
  2. Telefonunuzu kapatın.
  3. SD kart tepsisini çıkarın veya cihazın arka kapağını çıkarın (modele bağlı olarak). Gerekirse kartı tutan tırnağı kaldırın.
  4. SD kartı yuvaya yerleştirin. Tutma tırnağını kaldırdıysanız indirin.
  5. Cihazın SD kart tepsisini veya arka kapağını tekrar takın.
Adım 2: SD kartı açın.
  1. SD kart bildiriminin görünmesini bekleyin.
  2. Tıklamak Ayarla.
  3. İstediğiniz depolama türünü seçin.
    • Çıkarılabilir depolama:
      Kartı tüm dosyalarınızla (fotoğraf ve müzik gibi) birlikte başka bir cihaza aktarabilirsiniz. Uygulamalar çıkarılabilir bir sürücüye taşınamaz.
    • Dahili hafıza:
      Kart, yalnızca söz konusu cihaza ait uygulamaları ve verileri depolayabilir. Başka bir cihaza taşırsanız içindeki tüm veriler silinir.
  4. SD kartınızı ayarlamak için ekrandaki talimatları izleyin.
  5. Bitirdiğinizde tıklayın Hazır.

SD kart nasıl kullanılır?

Uygulamalar SD karta nasıl taşınır

Kartı dahili depolama olarak bağladıysanız uygulamaları ona aktarabilirsiniz.

Not. Tüm uygulamalar bir SD karta aktarılamaz.

Dosyalar SD karta nasıl taşınır

Çıkarılabilir depolama aygıtı olarak bir SD kart taktıysanız, müzik ve fotoğraf gibi çeşitli dosyaları bu karta aktarabilirsiniz. Bundan sonra cihazın dahili belleğinden silinebilirler.

Adım 1: Dosyaları SD karta kopyalayın.

Adım 2: Dahili depolama alanınızdaki dosyaları silin.

SD kartın içeriğini görüntüleyebilir ve ne kadar alan kaldığını görebilirsiniz.

SD kart dahili depolama olarak kullanıldığında

SD kart çıkarılabilir depolama aygıtı olarak kullanıldığında

  1. Bildirim panelini açmak için ekranın üst kısmından aşağı doğru kaydırın.
  2. SD kart bildirimi altında öğesine dokunun. Açık.

Dolphin, verileri adlı bir sanal SD karta depolayabilir sd.raw. Varsayılan olarak 128MB boyutunda oluşturulacaktır.

Sanal SD kartın Dolphin'deki homebrew uygulamaları için önemli bir kullanımı vardır. Project M ve Mario Kart Wii özel parçaları iki iyi örnektir; çünkü bazı homebrew uygulamaları yalnızca tasarlandıkları gerçek donanımın SD kartında depolanan dosyaları kullanarak çalışabilir.

İçindekiler

Sanal SD Kart Oluşturma

Project M gibi büyük homebrew uygulamaları için boyutu en az 1 GB olan ve gerçek donanımda bir SDHC kartı altında çalışmaya çalışan bazı homebrew uygulamalarıyla uyumluluk sorunları olduğundan en iyi uyumluluk için 2 GB'ı aşmayan bir boyut oluşturmanız önerilir. .

Komut Satırı ve Yürütülebilir Dosyalar

WinImage güvenilmezdir, çünkü işin tuhafı, senkronizasyon bozulmasına ve diğer birkaç öngörülemeyen soruna neden olacaktır. ImDisk iyi olacak.

Sanal SD kartını takmak ve düzenlemek için hızlı kılavuz ImDisk Sanal Disk Sürücüsü:

  1. Sağ tıklayın sd.raw dosya ve ardından tıklayın "ImDisk Sanal Disk Olarak Bağla" bağlam menüsünden.
  2. Onay kutusu Çıkarılabilir medya sonra vur "TAMAM". Önceden tanımlanmış sürücü harfi ve diğer her şey gayet iyi sonuç verecektir.
    • Sanal SD kart artık yerel Explorer penceresinin okuyabileceği ve yazabileceği "Çıkarılabilir Disk" olarak görünecektir.
  3. Sanal SD kartı düzenlemeyi tamamladığınızda, "Çıkarılabilir Disk"e sağ tıklayıp ardından simgesine tıklayarak bağlantısını kesin. "ImDisk Sanal Diskini Çıkar" bağlam menüsünden.
    • Dolphin ile kullanılmadan önce sanal SD kartın çıkarılması gerekir.

Yunus Ayarı

Seçenekler > Yapılandır... > Wii > seçeneğine gidin ve etkinleştirin SD Kartı Takın.

Kullanım

Homebrew Uygulaması ile

Homebrew uygulaması için kullanılan harici dosyalar, sd.raw ve homebrew uygulamasının kendisi ( önyükleme.elf veya önyükleme.dol) Dolphin'in yüklenebilmesi için bunun dışında mevcut olmalıdır. Örneğin M Projesi SD kökünden yüklenecek \proje\ ve Dolphin'in Proje M'yi başlatması gerekecek \apps\projectm\boot.elf, OLUMSUZ sanal SD kartta. Kolaylık sağlamak açısından, sanal SD kartın içi ve dışı arasında aynı kopyaların paralel olması idealdir.

Bununla birlikte, Wii için homebrew istismarları yoluyla homebrew uygulamasını sanal SD karttan başlatmak mümkündür.

Wii oyun başlatıcı uygulaması yalnızca belirli bir Wii oyunu varsayılan ISO olarak ayarlandığında çalışır. Dolphin oyun listesinde herhangi bir Wii oyununda içerik menüsünü açın (sağ tıklayın) ve Varsayılan ISO olarak ayarla. Bunu Dolphin ile bir homebrew uygulaması yüklemeden önce yapın.

Netplay için

Netplay, oluşturulduğu boyuta ve kökündeki aynı dosya/klasör yapılarına bakılmaksızın, klonlanmamış sanal SD kartı okuyan herhangi bir şey varsa sonunda senkronizasyonu bozacaktır. Bunu önlemek için, sd.raw netplay'e başlamadan önce ana bilgisayarın bilgisayarından birleştiricilerin bilgisayarlarına kopyalanmalıdır. Sanal SD kart çevrimdışı veya çevrimiçi olarak yazma bloğu devre dışı bırakılarak kullanılmışsa, MD5 sağlama toplamı değişecektir (dosyaların "Erişim Tarihi", sanal SD kartta farklı olandır), ancak senkronizasyon bozulmasına neden olmayacaktır. başka bir yerden geliyor olması veya kendi bünyesinde "farklı" olacak şekilde değiştirilen dosyalara tabi tutulması.

Wii oyun başlatıcı uygulaması için, her iki taraftaki kullanıcıların oyun listelerinde ilk önce homebrew uygulamasının ve oyunun aynı kopyalarına sahip olmaları, ardından önceki bölümde belirtildiği gibi oyunu varsayılan ISO olarak ayarlamaları gerekir.