Birden Fazla Kullanıcıyı Destekleme

Android, kullanıcı hesaplarını ve uygulama verilerini ayırarak tek bir Android cihazında birden fazla kullanıcıyı destekler. Örneğin, ebeveynler çocuklarının aile tabletini kullanmasına izin verebilir, bir aile bir otomobili paylaşabilir veya kritik bir müdahale ekibi nöbetçi görev için bir mobil cihazı paylaşabilir.

terminoloji

Android, Android kullanıcılarını ve hesaplarını tanımlarken aşağıdaki terimleri kullanır.

Genel

Android cihaz yönetimi aşağıdaki genel terimleri kullanır.

  • Kullanıcı. Her kullanıcı farklı bir fiziksel kişi tarafından kullanılmak üzere tasarlanmıştır. Her kullanıcı, farklı uygulama verilerine ve bazı benzersiz ayarlara ve ayrıca kullanıcılar arasında açıkça geçiş yapmak için bir kullanıcı arayüzüne sahiptir. Bir kullanıcı, başka bir kullanıcı etkinken arka planda çalışabilir; sistem, uygun olduğunda kaynakları korumak için kullanıcıları kapatmayı yönetir. İkincil kullanıcıların doğrudan kullanıcı arabirimi üzerinden veya gelen ya oluşturulabilir Cihaz Yönetimi uygulaması.
  • Hesap. Hesaplar bir kullanıcı içinde bulunur, ancak bir kullanıcı tarafından tanımlanmaz ve bir kullanıcı herhangi bir hesap tarafından tanımlanmaz veya bu hesapla bağlantılı değildir. Kullanıcılar ve profiller kendi benzersiz hesaplarını içerir ancak işlevsel olması için hesaplara sahip olmaları gerekmez. Hesap listesi kullanıcıya göre farklılık gösterir. Detaylar için bakınız Hesap sınıf tanımı.
  • Profil. Bir profil, uygulama verilerini ayırmıştır ancak sistem genelindeki bazı ayarları paylaşır (örneğin, Wi-Fi ve Bluetooth). Profil, bir kullanıcının varlığının bir alt kümesidir ve buna bağlıdır. Bir kullanıcının birden fazla profili olabilir. Profiller bir içinden oluşturulan Cihaz Yönetimi uygulaması. Bir profilin her zaman, profili oluşturan kullanıcı tarafından tanımlanan bir üst kullanıcıyla değişmez bir ilişkisi vardır. Profiller, oluşturan kullanıcının ömrü boyunca mevcut değildir.
  • Uygulama. Bir uygulamanın verileri, ilişkili her kullanıcı içinde bulunur. Uygulama verileri, aynı kullanıcı içindeki diğer uygulamalardan korumalı alana alınır. Aynı kullanıcı içindeki uygulamalar, IPC aracılığıyla birbirleriyle etkileşime girebilir. Detaylar için bakınız işletme için Android .

Kullanıcı kategorileri

Android cihaz yönetimi, aşağıdaki kullanıcı kategorilerini kullanır.

  • Sistem kullanıcı. Bir cihaza eklenen ilk kullanıcı. Sistem kullanıcısı, fabrika ayarlarına sıfırlama dışında kaldırılamaz ve diğer kullanıcılar ön planda olsa bile her zaman çalışır. Bu kullanıcı ayrıca özel ayrıcalıklara ve sadece kendisinin belirleyebileceği ayarlara sahiptir.
  • İkincil kullanıcı. Sistem kullanıcısı dışında cihaza eklenen herhangi bir kullanıcı. İkincil kullanıcılar (kendileri veya bir yönetici kullanıcı tarafından) kaldırılabilir ve bir cihazdaki diğer kullanıcıları etkileyemez. Bu kullanıcılar arka planda çalışabilir ve ağ bağlantısına sahip olmaya devam edebilir.
  • Misafir kullanıcı. Geçici ikincil kullanıcı. Konuk kullanıcılar, kullanışlılığı bittiğinde konuk kullanıcıyı hızlı bir şekilde silmek için açık bir seçeneğe sahiptir. Bir seferde yalnızca bir misafir kullanıcı olabilir.
  • Yönetici kullanıcı. Bazı genel çok kullanıcılı ayarları kontrol etmenin yanı sıra diğer kullanıcıları oluşturma ve kaldırma iznine sahip bir kullanıcı. Varsayılan olarak, yalnızca sistem kullanıcısı bir yöneticidir.

Profil kategorileri

Android cihaz yönetimi, aşağıdaki profil kategorilerini kullanır.

  • Yönetilen profil. İş verilerini ve uygulamalarını içerecek şekilde bir uygulama tarafından oluşturulmuştur. Yalnızca profil sahibi tarafından yönetilirler (şirket profilini oluşturan uygulama). Başlatıcı, bildirimler ve son görevler üst kullanıcı ve şirket profili tarafından paylaşılır.
  • Kısıtlı profili. Kısıtlanmış profilde hangi uygulamaların mevcut olduğunu kontrol edebilen üst kullanıcıya dayalı hesapları kullanır. Yalnızca tabletlerde ve televizyon cihazlarında kullanılabilir.

Kullanıcı türleri

Robot 11 tüm robot Çok kullanıcılı özelliği tarafından izin verilen kullanıcı profil ve farklı temsil iyi tanımlanmış kullanıcı türleri içine kullanıcı ve profiller yukarıda sınıflandırma formüle sahiptir.

Önceden tanımlanmış AOSP kullanıcı tipleri tanımlanır frameworks/base/core/java/android/os/UserManager.java ve şu anda şunlardır:

  • android.os.usertype.full.SYSTEM
  • android.os.usertype.full.SECONDARY
  • android.os.usertype.full.GUEST
  • android.os.usertype.full.DEMO
  • android.os.usertype.full.RESTRICTED
  • android.os.usertype.profile.MANAGED
  • android.os.usertype.system.HEADLESS

OEM yer paylaştırılarak söz konusu kullanıcı türlerini yapılandırma olanağına sahiptirler frameworks/base/core/res/res/xml/config_user_types.xml dosyayı. Bu, varsayılan kısıtlamaları, simgeleri, rozetleri ve izin verilen maksimum kullanıcı sayısı dahil olmak üzere her kullanıcı türü için varsayılan yapılandırmanın değiştirilmesini kolaylaştırır.

Yapılandırılabilir AOSP kullanıcı türlerine ek olarak, OEM kullanarak yeni bir profil göre tanımlayabilir frameworks/base/core/res/res/xml/config_user_types.xml dosya. Bu, OEM'lerin istenirse kendi yönetilmeyen profil türlerini tanıtmalarını sağlar. Ancak, uygunsa yeni profil türünü işlemek için yönetilen profilleri kontrol eden herhangi bir kodun değiştirilmesi de dahil olmak üzere, değişiklikleri desteklemek için gereken platform değişikliklerini yapmak OEM'in sorumluluğundadır.

Çoklu kullanıcıyı etkinleştirme

Android 5.0'dan itibaren çoklu kullanıcı özelliği varsayılan olarak devre dışıdır. Özelliği etkinleştirmek için, cihaz üreticileri aşağıdaki değerleri yerine bir kaynak paylaşımını tanımlamalıdır frameworks/base/core/res/res/values/config.xml :

<!--  Maximum number of supported users -->
<integer name="config_multiuserMaximumUsers">1</integer>
<!--  Whether Multiuser UI should be shown -->
<bool name="config_enableMultiUserUI">false</bool>

Kullanmak, bu şablonu uygulamak ve cihazda konuk ve ikincil kullanıcılar etkinleştirmek için DEVICE_PACKAGE_OVERLAYS değerlerini değiştirmek için Android inşa sisteminin özelliği:

  • config_multiuserMaximumUsers daha büyük bir değere sahip 1
  • config_enableMultiUserUI ile true

Cihaz üreticileri maksimum kullanıcı sayısına karar verebilir. Cihaz üreticileri veya başkalarının ayarlarını değiştirdiyseniz tanımlanan, onlar SMS ve telefon çalışmalarını sağlamalıdır Android Uyumluluk Tanımı Belgesi (CDD).

Birden çok kullanıcıyı yönetme

Kullanıcılar ve (kısıtlı profillerde hariç) profili yönetimi programlı içinde API çağırmak uygulamalar tarafından gerçekleştirilir DevicePolicyManager sınıfına kullanımını kısıtlamak için.

Okullar ve işletmeler ile birlikte yukarıda özetlenen türlerini kullanarak, kullanıcılar ve profiller cihazlarda uygulamalar ve veriler de ömrünü ve kapsamını yönetmek için kullanabilir UserManager API , kullanım örneklerine özgü benzersiz çözümler oluşturmak için.

Çok kullanıcılı sistem davranışı

Bir cihaza kullanıcılar eklendiğinde, başka bir kullanıcı ön plandayken bazı işlevler kısıtlanır. Uygulama verileri kullanıcı tarafından ayrıldığından, bu uygulamaların durumu kullanıcıya göre farklılık gösterir. Örneğin, şu anda odakta olmayan bir kullanıcının hesabına yönelik e-posta, o kullanıcı ve hesap cihazda etkin olana kadar kullanılamaz.

Varsayılan olarak, yalnızca sistem kullanıcısı telefon aramalarına ve kısa mesajlara tam erişime sahiptir. İkincil kullanıcı gelen aramaları alabilir ancak metin gönderemez veya alamaz. Bir yönetici kullanıcı, bu işlevleri başkaları için etkinleştirmelidir.

Not: etkinleştirmek veya ikincil bir kullanıcı için telefon ve SMS fonksiyonları devre dışı kullanmak için Ayarlar> Kullanıcılar, kullanıcıyı seçin ve telefon aramaları ve kapalı olarak SMS izin verme ayarı anahtarı belirleyin.

İkincil bir kullanıcı arka planda olduğunda bazı kısıtlamalar mevcuttur. Örneğin, arka plandaki ikincil kullanıcı, kullanıcı arabirimini görüntüleyemez veya Bluetooth hizmetlerini etkinleştiremez. Ayrıca, cihazın ön plan kullanıcısındaki işlemler için ek belleğe ihtiyacı varsa, sistem işlemi arka plandaki ikincil kullanıcıları durdurur.

Bir Android cihazda birden fazla kullanıcı çalıştırırken aşağıdaki davranışı göz önünde bulundurun:

  • Bildirimler, tek bir kullanıcının tüm hesapları için aynı anda görünür.
  • Diğer kullanıcılar için bildirimler aktif olana kadar görünmez.
  • Her kullanıcı, uygulamaları yüklemek ve yerleştirmek için bir çalışma alanı alır.
  • Hiçbir kullanıcının başka bir kullanıcının uygulama verilerine erişimi yoktur.
  • Herhangi bir kullanıcı, tüm kullanıcılar için yüklü uygulamaları etkileyebilir.
  • Yönetici kullanıcı, uygulamaları ve hatta ikincil kullanıcılar tarafından oluşturulan tüm çalışma alanını kaldırabilir.

Android 7.0, aşağıdakiler de dahil olmak üzere çeşitli geliştirmeler içerir:

  • Geçiş iş profili. Kullanıcılar, yönetilen profillerini devre dışı bırakabilir (örneğin, işte değilken). Bu işlevsellik, kullanıcı durdurularak elde edilir; UserManagerService çağırır ActivityManagerNative#stopUser() .
  • Her zaman açık VPN. VPN uygulamaları artık kullanıcı, Cihaz DPC'si veya Yönetilen Profil DPC'si tarafından her zaman açık olarak ayarlanabilir (yalnızca Yönetilen Profil uygulamaları için geçerlidir). Etkinleştirildiğinde, uygulamalar genel ağa erişemez (VPN bağlanana ve bağlantılar bunun üzerinden yönlendirilene kadar ağ kaynaklarına erişim durdurulur). Raporda Cihazlar device_admin VPN her zaman açık uygulamalıdır.

Android 7.0 cihaz yönetimi özellikleri hakkında daha fazla ayrıntı için bakınız Android for Work .

Android Otomotiv Çok Kullanıcılı

Android Automotive, paylaşılan bir cihaz deneyimi sağlamak için Android'in çok kullanıcılı uygulamasına güveniyor.

Otomotiv Kullanıcı Tipleri

Yukarıda listelenen kullanıcı türlerine ek olarak, Otomotiv yapıları bu tür kullanıcılar için dikkate değerdir:

  • Başsız sistem kullanıcısı. Sistem kullanıcısı tüm sistem hizmetlerini barındırır. Otomotiv üzerinde birden çok kullanıcı desteklemek için, sistem kullanıcı da başsız olmalıdır. Sadece bir başsız kullanıcı var. Başsız bir sistem kullanıcısı:
    • Her zaman arka planda çalışması gerekir.
    • Cihaz Sağlama durumu dışında, doğrudan kullanıcı tarafından kaldırılamaz veya erişilemez. Örneğin, kullanıcılar uygulama indirme veya hesap ekleme gibi görevleri gerçekleştirmek için bu Kullanıcı türüne geçemez.
    • Yalnızca fabrika ayarlarına sıfırlama ile temizlenebilir.
  • Düzenli kullanıcılar. Aynı İkincil Kullanıcılar ikincil kullanıcılar hariç, yukarıda açıklandığı:
    • Arka planda çalıştırmayın (kapatıldıktan sonra).
    • Doğrudan kullanıcı arayüzü üzerinden oluşturulabilir.
    • Uygulama verilerini ayırın, ancak sistem genelinde bazı ayarları paylaşın. Örneğin, Wi-Fi ve Bluetooth.

uyarılar

Aşağıdaki istisnalar, Otomotivde başsız sistem kullanıcısı ve normal (ikincil) Kullanıcılar için geçerlidir:

  • Başsız sistem kullanıcısı, iş profillerini desteklemez.
  • Varsayılan olarak, normal (ikincil) kullanıcılar telefon aramalarına ve metinlere tam erişime sahiptir.
  • Varsayılan olarak, normal (ikincil) kullanıcılar arka planda çalışmaz.

Başsız Sistem Kullanıcısını Etkinleştirme

Android 10'dan itibaren, çoklu kullanıcı özelliği otomotiv kullanım durumları için kullanılabilir. Önemli ayrımlar şunları içerir:

  • Sistem kullanıcısı başsızdır ve yalnızca arka planda çalışır.
  • İnsan kullanıcılar, sistem kullanıcısı ile etkileşime girmez.

Başsız sistem kullanıcısını etkinleştirmek için cihaz üreticilerinin yukarıda açıklandığı gibi çoklu kullanıcıyı etkinleştirmesi gerekir.

Başsız kullanıcı etkinleştirildiğinde:
  1. Otomotiv olmaya cihazı bildirmek için, özellik eklemek android.hardware.type.automotive .
  2. Set ro.fw.headless_system_user için true .
  3. Değerini ayarlama config_multiuserMaximumUsers için 2 (ya da daha yüksek).

Daha fazla bilgi için, bkz Multi-User Destek Otomotiv.