Google 致力于为黑人社区推动种族平等。查看具体举措
Bu sayfa, Cloud Translation API ile çevrilmiştir.
Switch to English

Kabul Edilebilir Depolama

Android her zaman harici depolama aksesuarlarını (SD kartlar gibi) desteklemiştir, ancak bu aksesuarlar, beklenen süreksizlikleri ve geleneksel harici depolamaya sunulan minimum veri koruması nedeniyle tarihsel olarak basit dosya depolamayla sınırlıydı. Android 6.0, dahili depolama gibi davranmak için harici depolama ortamını benimseme yeteneği getirdi.

Harici depolama ortamı kabul edildiğinde, bir seferde yalnızca tek bir Android cihazla çalışacak şekilde biçimlendirilir ve şifrelenir. Medya, onu benimseyen Android cihaza güçlü bir şekilde bağlı olduğundan, tüm kullanıcılar için hem uygulamaları hem de özel verileri güvenli bir şekilde depolayabilir.

Kullanıcılar kabul edilebilir bir konuma yeni bir depolama ortamı (SD kart gibi) yerleştirdiklerinde, Android onlara medyayı nasıl kullanmak istediklerini sorar. Hangi formatlarda ve şifreli medyayı benimsemeyi seçebilirler veya basit dosya depolaması için olduğu gibi kullanmaya devam edebilirler. Eğer benimsemeyi seçerlerse, platform, birincil paylaşılan depolama içeriklerini (tipik olarak /sdcard takılı) yeni benimsenen ortama taşımayı teklif ederek dahili depolamada değerli alan yaratır. MBR kullanımı nedeniyle 2TB ile sınırlı olan geleneksel depolamanın aksine, benimsenebilir depolama GPT kullanır ve bu nedenle ~ 9ZB dosya depolama sınırına sahiptir.

Uygulamalar, yalnızca geliştirici desteği android:installLocation özniteliğiyle belirttiğinde, benimsenen depolama ortamına yerleştirilebilir. Desteklenen uygulamaların yeni yüklemeleri otomatik olarak en fazla boş alana sahip depolama cihazına yerleştirilir ve kullanıcılar, Ayarlar uygulamasında desteklenen uygulamaları depolama cihazları arasında taşıyabilir. Kabul edilen ortama taşınan uygulamalar, ortam çıkarılırken hatırlanır ve ortam yeniden takıldığında geri döner.

Güvenlik

Platform, kabul edilen her cihaz için rasgele şifreleme anahtarları oluşturur ve bunları Android cihazının dahili depolamasında saklar. Bu, benimsenen medyayı dahili depolama kadar güvenli hale getirir. Anahtarlar, benimsenen bölüm GUID'sine göre benimsenen cihazlarla ilişkilendirilir.

Cihaz, dahili depolamasında dosya tabanlı şifreleme (FBE) kullanacak şekilde yapılandırılmışsa, uyarlanabilir depolama hem FBE hem de meta veri şifrelemesini kullanır. Aksi takdirde, benimsenebilir depolama, tam disk şifrelemesini (FDE) kullanır.

Kabul edilen cihazın disk üzerindeki düzeni, SELinux etiketleri vb. Dahil olmak üzere dahili veri bölümünü yakından yansıtır. Android cihazda çoklu kullanıcı desteklendiğinde, benimsenen depolama cihazı aynı zamanda dahili olarak aynı seviyede izolasyon ile çoklu kullanıcıyı destekler. depolama.

Kabul edilen bir depolama cihazının içeriği, onu benimseyen Android cihaza güçlü bir şekilde bağlı olduğundan, şifreleme anahtarları ana cihazdan çıkarılmamalıdır ve bu nedenle depolama cihazı başka bir yere monte edilemez.

Cihazınız FBE kullanıyorsa, FBE'nin ve meta veri şifrelemesinin kabul edilebilir depolamada nasıl yapılandırılacağını öğrenmek için FBE belgelerine ve meta veri şifreleme belgelerine bakın.

Performans ve istikrar

Kazara veri kaybını veya bozulmasını önlemeye yardımcı olmak için, yalnızca pil bölmesindeki veya koruyucu bir kapağın arkasındaki yuva gibi sabit konumlardaki harici depolama ortamları benimsenmelidir. Özellikle, bir telefona veya tablete bağlanan USB cihazlarının benimsenmesi asla düşünülmemelidir. Yaygın bir istisna, TV tarzı bir cihaza bağlı harici bir USB sürücü olabilir, çünkü TV'nin tamamı tipik olarak sabit bir konuma kurulur.

Bir kullanıcı yeni bir depolama cihazı benimsediğinde, platform bir kıyaslama yapar ve performansını dahili depolamayla karşılaştırır. Kabul edilen cihaz, dahili depolamadan önemli ölçüde daha yavaşsa, platform, kullanıcıyı muhtemelen düşük bir deneyim konusunda uyarır. Bu kıyaslama, popüler Android uygulamalarının gerçek G / Ç davranışından türetilmiştir. Şu anda, AOSP uygulaması kullanıcıları yalnızca tek bir eşiğin ötesinde uyaracaktır, ancak cihaz üreticileri, kart aşırı derecede yavaşsa benimsemeyi tamamen reddetmek gibi bunu daha da uyarlayabilir.

Kabul edilen aygıtlar, ext4 veya f2fs gibi POSIX izinlerini ve genişletilmiş öznitelikleri destekleyen bir dosya sistemiyle biçimlendirilmelidir. En iyi performans için, flash tabanlı depolama aygıtları için f2fs dosya sistemi önerilir.

Periyodik boşta bakım gerçekleştirirken, platform, tıpkı dahili depolamada olduğu gibi medyayı benimsemek için FI_TRIM verir. Mevcut SD kart özelliği DISCARD komutunu desteklemiyor; ancak çekirdek bunun yerine, SD kart belleniminin optimizasyon amacıyla kullanmayı seçebileceği ERASE komutuna geri döner.

Test yapmak

Kabul edilebilir depolamanın çalışıp çalışmadığını test etmek için şu CTS testini çalıştırın:

cts-tradefed run commandAndExit cts-dev \
    -m CtsAppSecurityHostTestCases \
    -t android.appsecurity.cts.AdoptableHostTest

Bir cihazda yerleşik bir yuva bulunmadığında veya USB konektörü aktif bir adb bağlantısı için kullanıldığında USB sürücülerin ve SD kartların davranışını doğrulamak için şunu kullanın:

adb shell sm set-virtual-disk true