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ının farklı bir fiziksel kişi tarafından kullanılması amaçlanmış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, doğrudan kullanıcı arabirimi aracılığıyla veya bir Cihaz Yönetimi uygulamasından oluşturulabilir.
  • 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 değişir. Ayrıntılar için Hesap sınıfı tanımına bakın.
  • 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 Cihaz Yönetimi uygulaması aracılığıyla oluşturulur. 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. Ayrıntılar için Kurumsal Android'e bakın.

Kullanıcı kategorileri

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

  • Sistem kullanıcısı . 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.
  • Konuk 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. Bunlar, yalnızca profil sahibi (kuruluş profilini oluşturan uygulama) tarafından yönetilir. Başlatıcı, bildirimler ve son görevler üst kullanıcı ve şirket profili tarafından paylaşılır.
  • Kısıtlı profil . 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

Android 11, yukarıdaki kullanıcı ve profil sınıflandırmasını, Android Çoklu kullanıcı özelliğinin izin verdiği tüm farklı kullanıcı ve profil türlerini temsil eden iyi tanımlanmış kullanıcı türleri şeklinde formüle etmiştir.

Önceden tanımlanmış AOSP kullanıcı türleri, frameworks/base/core/java/android/os/UserManager.java içinde tanımlanmıştır ve şu anda şunları içerir:

  • 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'ler, frameworks/base/core/res/res/xml/config_user_types.xml dosyasını kaplayarak bu kullanıcı türlerini yapılandırma yeteneğine sahiptir. 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'ler frameworks/base/core/res/res/xml/config_user_types.xml dosyasını kullanarak yeni profil türleri tanımlayabilir. Bu, OEM'lerin istenirse kendi yönetilmeyen profil türlerini tanıtmalarına olanak tanır. 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 üreticilerinin frameworks/base/core/res/res/values/config.xml aşağıdaki değerlerin yerini alan bir kaynak yerleşimi tanımlaması gerekir:

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

Bu kaplamayı uygulamak ve cihazda konuk ve ikincil kullanıcıları etkinleştirmek için, aşağıdaki değerleri değiştirmek üzere Android derleme sisteminin DEVICE_PACKAGE_OVERLAYS özelliğini kullanın:

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

Cihaz üreticileri maksimum kullanıcı sayısına karar verebilir. Cihaz üreticileri veya başkaları ayarları değiştirmişse, SMS ve telefonun Android Uyumluluk Tanımı Belgesinde (CDD) tanımlandığı şekilde çalışmasını sağlamalıdır.

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

Kullanıcıların ve profillerin yönetimi (kısıtlanmış profiller hariç), kullanımı kısıtlamak için DevicePolicyManager sınıfında programlı olarak API'yi çağıran uygulamalar tarafından gerçekleştirilir.

Okullar ve kuruluşlar, kullanım durumlarına göre uyarlanmış benzersiz çözümler oluşturmak için UserManager API ile birlikte yukarıda ana hatlarıyla belirtilen türleri kullanarak, cihazlardaki uygulamaların ve verilerin kullanım ömrünü ve kapsamını yönetmek için kullanıcılar ve profiller kullanabilir.

Ç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 : İkincil bir kullanıcı için telefon ve SMS işlevlerini etkinleştirmek veya devre dışı bırakmak için Ayarlar > Kullanıcılar'a gidin, kullanıcıyı seçin ve Telefon aramalarına ve SMS'e izin ver ayarını kapalı olarak değiştirin.

İ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ı durduracaktır.

Bir Android cihazda birden fazla kullanıcı çalıştırırken aşağıdaki davranışı aklınızda 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ına sahip olur.
  • 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:

  • İş profilini aç/kapat 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, ActivityManagerNative#stopUser() öğesini çağırır.
  • 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). device_admin bildiren cihazlar her zaman açık VPN uygulamalıdır.

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

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. Otomotivde birden fazla kullanıcıyı desteklemek için sistem kullanıcısının da başsız olması gerekir. 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. İkincil kullanıcılar dışında, yukarıda açıklanan İkincil Kullanıcılar ile aynıdır:
    • 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ıları 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. Cihazın Otomotiv olduğunu bildirmek için android.hardware.type.automotive özelliğini ekleyin.
  2. ro.fw.headless_system_user öğesini true olarak ayarlayın.
  3. config_multiuserMaximumUsers değerini 2 (veya daha yüksek) olarak ayarlayın.

Daha fazla bilgi için bkz. Otomotivde Çoklu Kullanıcı Desteği .