Özel alan

Şekil 1. Özel alanın kilidi açılarak veya kilitlenerek cihazdaki hassas uygulamalar gösterilebilir ya da gizlenebilir.

Özel alan, kullanıcıların cihazlarında hassas uygulamaları meraklı gözlerden korumak için güvenli ve izole bir ortam oluşturmalarını sağlar. Özel alandaki uygulamalar, başlatıcıda ayrı bir kapsayıcıda gösterilir ve özel alan kilitlendiğinde son kullanılanlar görünümü, bildirimler, ayarlar ve diğer uygulamalardan gizlenir.

Korumalı alan ayrı bir Android profilidir. Son kullanıcı özel alana bir uygulama eklediğinde veya yüklediğinde uygulama bu yeni Android profiline yüklenir. Sistem bunu yeni bir uygulama yükleme olarak değerlendirir ve uygulama verileri özel alana kopyalanmaz. Alan kilitliyken özel profil kullanıcısı durdurulur ve alan kilidi açıldığında kullanıcı başlatılır.

Özel alandaki uygulamalar, ana alandaki uygulamaların ayrı kopyaları olarak yüklenir. Kullanıcı içerikleri (kullanıcı tarafından oluşturulan veya indirilen) ve kullanıcı hesapları, özel alan ile ana alan arasında ayrılır. Uygulamaların yalnızca özel alanın kilidi açıkken alanlar arasındaki içeriklere erişmesine izin vermek için sistem paylaşım sayfasını ve fotoğraf seçiciyi kullanabilirsiniz.

Özel alan, Android çok kullanıcılı modelini temel alır ve aşağıdaki profil ile kullanıcı türünü ekler:

Profil:
Özel
Kullanıcı türü:
android.os.usertype.profile.PRIVATE

Ayarlar ve başlatıcı uygulamaları

Kilit, kilit açma ve gizli durumları desteklemek için ayarları ve başlatıcı uygulamalarını güncellemeniz gerekir. Özel alan kilitliyken başlatıcı, kilidini açmak için bir giriş noktası sağlar (gizli durumda hariç). Özel alan kilitliyken ayarlar uygulaması, özel alanın varlığını göstermemelidir.

Gizli profil kullanıcısını tanımlamak için LauncherApps#getLauncherUserInfo değerini kullanın. Başlatıcı uygulamalarının, kilitli durumu ve kilidi açık durumu kaydettirmesi ve bu yayınlar alındığında kullanıcı arayüzünde özel alanın durumunu değiştirmesi gerekir. Bu yayınların her ikisinde de, gizli profil kullanıcısına atıfta bulunmak için kullanabileceğiniz EXTRA_USER adlı ek bir sabit vardır.

Başlatıcı uygulamaları, gizli profil durumunu kontrol etmek için UserManager.isQuietModeEnabled yöntemini kullanabilir.

Gizli profil

Özel profil, özel alanla birlikte kullanılacak yeni profil türünü android.os.usertype.profile.PRIVATE ekler. Özel profil, iş profili ve kopya profille aynı cihazda bulunabilir. Ana Android kullanıcısından ayrı, korumalı bir alandır. Özel alanın kilidi açıldığında uygulamalar ayarlar, Sharesheet, fotoğraf seçici ve Dokümanlar kullanıcı arayüzünde görünür hale gelir. Özel alan kilitliyken özel alandaki uygulamalar bu yüzeylerin hiçbirinde gösterilmez. Özel alan tek bir cihazda yalnızca bir kez oluşturulabilir ve yalnızca ana kullanıcı için kullanılabilir (ikincil kullanıcılar veya diğer profiller için kullanılamaz).

İzinler

Özel profillere erişmek için başlatıcı uygulamalarının android.permission.ACCESS_HIDDEN_PROFILES iznine ve android.app.role.RoleManager.ROLE_HOME rolüne sahip olması gerekir.

AOSP başlatıcısını kullanmayan uygulamaların, özel profil desteği eklemek için başlatıcılarını değiştirmesi gerekir. Özel alan içeren bir başlatıcı uygulaması geliştirme hakkında daha fazla bilgi edinmek için geliştirici sitemizdeki başlatıcı uygulamaları başlıklı makaleyi inceleyin.

Amaçlar

Telefon araması intent'leri ana kullanıcıya yönlendirilir ve bir bildirim gösterilir. Diğer tüm intent'ler gizli profille sınırlıdır ve yönlendirilmez.