Android 7.1.1, mağaza demo modu için sistem düzeyinde destek kullanıma sundu. cihazları perakende satış mağazalarında çalışırken inceleyebilirler. Cihazlar ayarlandı cihaz kullanımının doğru olduğundan emin olmak için bir cihaz sahibi uygulaması kullanarak yalnızca belirli demo modu uygulamalarıyla sınırlıdır. Son kullanıcılar bir kişisel hesabı kullanarak deneme yapıyor. Android 8.1 bu desteği aşağıdaki gibi revize eder: ve DevicePolicyManager'da demo kullanıcıları createAndManageUser API'ye gidin. Bu da OEM'in standart perakende moduna çok daha fazla özelleştirilebilmesini sağlar. ve cihaz politikası yönetimi şartlarını kabul edersiniz.
DevicePolicyManager ise
API'ler Android 8.1'den önceki sürümlerde kullanılabilir.
demo-türü kullanıcıları (DevicePolicyManager.MAKE_USER_DEMO
) oluşturulamıyor
createAndManageUser
8.0 ve önceki sürümlerde API.
Android 8.1 ve sonraki sürümlerde uygulama
Bu bölümde platform geliştirmeleri vurgulanmakta ve perakende demosu açıklanmaktadır Android 8.1 ve sonraki sürümlerde çalışır.
Platform değişiklikleri
DEVICE_DEMO_MODE özelliğini ayarla
Cihaz sahibi tabanlı perakende demo modunu kullanan cihazların ayarlanması gerekir
Settings.Global.DEVICE_DEMO_MODE
- 1 önce
cihazın perakende demo için temel hazırlığının yapıldığını gösteren temel hazırlık
yatırım yapmanız önemlidir.
SistemSunucusu
Güç profili ve gibi, perakende modunun özelliklerini yönetmek için bu işareti kullanır.
Sistem Arayüzü.
RetailDemoModeService'i etkinleştir
Perakende demo modunu uygulayan cihazlarda kurulum sihirbazı, genel bir demo
ayar
Global.DEVICE_DEMO_MODE
- true
, cihazın perakende moduna girdiğini gösterir. üzerine
Bu ayar değiştirildiğinde RetailDemoModeService, bir demo kullanıcısı oluşturur ve 0 kullanıcısı başlatıldığında buna geçiş yapar.
yer paylaşımlı kaynakta belirtilen özel başlatıcıyı sağlar ve SUW'yu devre dışı bırakır. Sistem
Server ve SystemUI, perakende modunun özelliklerini yönetmek için de bu işareti kullanır.
Özel başlatıcı veya video oynatıcı ayarlama
Cihaz üreticileri, çerçeveyi geçersiz kılarak özel bir başlatıcı belirtebilir
config.xml dosyasında belirtilen config_demoModeLauncherComponent
kaynağı
dosyası oluşturun.
<!-- Component that is the default launcher when Retail Mode is enabled. -->
<string name="config_demoModeLauncherComponent">com.android.retaildemo/.DemoPlayer</string>
Şu adreste bulunan perakende demo DemoPlayer uygulaması: /paketler/apps/RetailDemo Android Açık Kaynak Projesi'nde (AOSP) varsayılan özel başlatıcıdır. İlgili içeriği oluşturmak için kullanılan Uygulama, bir cihaz bölümünde /data/preloads/demo/retail_demo.mp4 gibi bir video arar bir döngü içinde oynatır. Kullanıcı ekrana dokunduğunda, özel başlatıcı etkinlik bileşenini devre dışı bırakır ve bu da varsayılan sistem başlatıcının başlatabilirsiniz.
Özel başlatıcının özel bileşeni, varsayılan olarak devre dışı olarak işaretlenmelidir
Böylece demo dışı senaryolarda görünmez. Demo senaryoda Sistem,
Sunucu, bir başlatılırken belirtilen config_demoModeLauncherComponent
oturum açın.
Kurulum sihirbazı, aynı zamanda daha önce bahsedilen videoyu da perakende moduna girme hakkını sağlıyor. SUW, başka bir URL'ye bakacak şekilde değiştirilebilir Videonun inceleyin. Sistem A/B bölümleri varsa sistem B bölümü demo videosunu /preloads/demo adresinde bulabilirsiniz. Bu, /data/preloads/demo.
Önceden yüklenmiş uygulamaları mağaza demo modu için özelleştirme
Önceden yüklenmiş uygulamalar,
UserManager.isDemoUser()
API'yi kullanarak uygulamanın demo ortamında kullanıma sunulup sunulmadığını anlayabilirsiniz.
Demo kullanıcısında, yönetilen cihaza benzer veya
uygulamaların ve kullanıcıların belirli işlemleri gerçekleştirmesini engelleyen profil politikaları.
Bu kısıtlamalardan biri de DISALLOW_MODIFY_ACCOUNTS
'dır. Bu kısıtlamayla, AccountManager
ve Ayarlar
hesapların eklenmesine izin verilmez. Bazı Google uygulamaları bu kısıtlamaya uyar
ve bir hata mesajı gösterir, diğerleri de hesap (ör.
YouTube ve Fotoğraflar). OEM uygulamalarının, mobil kullanım için
DISALLOW_MODIFY_ACCOUNTS
belirlenir ve senaryoyu buna göre işler.
Sistem güncellemeleri
Perakende modu etkinleştirildiğinde cihaz politikası varsayılan olarak kablosuz olarak ayarlanır (OTA) otomatik olarak güncellenir. Perakende cihazları indirilir, yeniden başlatılır ve yüklenir Kullanıcı etkileşimi olmadan güncelleme (pil eşikleri açısından)
Mağaza demo uygulaması
Cihaz sahibi tabanlı mağaza demo modunun uygulanması için bir Cihaz Politikası Denetleyicisi uygulamanızın sahibi olarak ayarlanması gerekir. AOSP, referans olarak RetailDemo uygulaması içerir /packages/apps/RetailDemo'ya uygulayabilirsiniz.
Cihaz sahibi uygulamalarının yüksek ayrıcalıklara veya sistem görüntüsü sağlar ve kurulum veya temel hazırlık işlemi sırasında indirilebilir. Çoğunlukla geleneksel uygulamalar gibi uygulanır ve farklar:
Cihaz sahibi olan tüm uygulamalar CihazYöneticisiAlıcı işlevini yerine getiren tüm uygulamalar için CihazPolitikasıYöneticisi API'ler. Bileşen,
android.permission.BIND_DEVICE_ADMIN
değerini içermelidir gerekli özel politikaları meta veri olarak dahil etmeli veandroid.app.action.PROFILE_PROVISIONING_COMPLETE
veandroid.app.action.DEVICE_ADMIN_ENABLED
amaçlar.DevicePolicyManager#MAKE_USER_DEMO flag'i gizli bir API'dir. Bu işaret 0x4 sabit bir değere sahiptir.
Cihaz sahipliği yalnızca cihaz yönetimi rolü aracılığıyla atanmalıdır veya Yönetilen Temel Hazırlık uygulamasını indirin.
DevicePolicyManager'daki API'ler sınıf, çeşitli cihazları zorunlu kılmak için Cihaz Sahibi (DO) ve Profil Sahibi (PO) özelliklerini etkinleştirin politikalar. Bazı DevicePolicyManager mağaza demo modu için geçerli işlevler aşağıdaki gibi listelenmiştir.
Kullanıcı oluşturma ve yönetme
Cihazı yeniden başlatın.
LockTask izin verilen paketleri ayarlayın.
Paketleri PackageLoader aracılığıyla yükleyin.
Paketlerin kaldırılmasını engelle
Otomatik sistem güncellemelerini etkinleştirin. Cihazlar, OTA güncellemelerini otomatik olarak indirip uygular.
Tuş koruyucuyu devre dışı bırak.
Şifre veya parmak izi ayarlanmasını önleyin.
İzin verilenler listesine eklenmiş bir Settings.Global grubu ayarlayın. Settings.Secure, ve Settings.System Ayarlar'da devre dışı bırakabilirsiniz.
İzin politikasını
PERMISSION_POLICY_AUTO_GRANT
olarak ayarlayın. tüm çalışma zamanı izinlerini otomatik olarak verir. İzinler de verilebilir daha dar kapsamlı bir şekilde ifade etmek gerekirse: tek bir uygulama için tek bir izin. Şunlar için geçerli değildir: Kullanıcıların yine de kullanıcı ve uygulama bazında vermeleri gereken uygulama işlemi izinleri.Şu makalede tanımlandığı şekilde perakende moduyla ilgili kullanıcı kısıtlamalarını ayarlama Kullanıcı Yöneticisi aşağıdaki gibi ekleyebilirsiniz.
DISALLOW_MODIFY_ACCOUNTS
DISALLOW_USB_FILE_TRANSFER
DISALLOW_DEBUGGING_FEATURES
DISALLOW_CONFIG_WIFI
DISALLOW_CONFIG_BLUETOOTH
DISALLOW_INSTALL_UNKNOWN_SOURCES
DISALLOW_CONFIG_MOBILE_NETWORKS
Web'i kullanarak demo videoyu güncelleyin
/packages/apps/RetailDemo'daki RetailDemo uygulaması , ağ bağlantısı varsa demo videoyu güncelleyebilir. Videonun indirileceği URL, şu geçersiz kılınarak yapılandırılabilir: RetailDemo uygulamasındaki dize değeri.
<!-- URL where the retail demo video can be downloaded from. -->
<string name="retail_demo_video_download_url"></string>
Farklı bölgelerde farklı videoların kullanılması gerekiyorsa bu videolar için indirme URL'leri, yerel ayara özel dize kaynakları kullanılarak yapılandırılabilir res/values-*/strings.xml. Örneğin ABD'de farklı videoların kullanılması gerekiyorsa ve aynı zamanda, ilgili indirme URL'leri de sırasıyla res/values-en-rUS/strings.xml ve res/values-en-rGB/strings.xml, aşağıdaki gibi gösterilir.
res/values-en-rUS/strings.xml dosyasında:
<string name="retail_demo_video_download_url">download URL for US video goes here</string>
res/values-en-rGB/strings.xml içinde:
<string name="retail_demo_video_download_url">download URL for UK video goes here</string>
Bu video, her cihaz yeniden başlatma işleminde en fazla bir kez indirilir. video oynatılıyorsa, RetailDemo uygulaması arka planda videoyu kontrol ediyor. İndirme URL'si sağlanmışsa ve URL'deki video, yardımcı oluyor.
Bu durumda RetailDemo uygulaması videoyu indirir ve oynatmaya başlar. Videodan sonra indirildiğinde, bundan sonra tüm demo oturumlarında oynamak için kullanılır. Hiç aktarılmadı bir sonraki yeniden başlatmaya kadar tekrar tamamlanır.
Demo video kuralları
Tanıtım videoları dikey düzende veya tablette ise cihazın ekranında doğal yönde ve beş saniyeden uzun herhangi bir uzunlukta olabilir. İçerik ekranda sürekli olarak oynatılacağından ekran yanmasına neden olmamalıdır.
Android Developers tanımlarını inceleyin kullanıcıların, profillerin ve hesapların, Device Policy Manager API dokümanları ve Örnek Cihaz Sahibi uygulaması konulu videomuzu izleyin.
Doğrulama
CTS, isteğe bağlı bir özellik olduğu için mağaza demo modunu kapsamaz. Test etme demo uygulaması için manuel olarak veya birim testleriyle yapılmalıdır.
Demo oturum
Demo oturumu kurulumu
Demo modu için yapılandırılmışlarsa mağaza demo cihazları mağaza demo modunda başlatılabilir var. Alternatif olarak, perakende çalışanları perakende modunu etkinleştirebilir yükleme sihirbazını kullanabilirsiniz.
Şekil 2. Mağaza tanıtım modu
Görüntülü reklam demo oturumu
Cihaz perakende moduna girdiğinde yeni bir demo kullanıcısına geçer ve yer paylaşımı kaynağında belirtilen özel başlatıcıyı otomatik olarak başlatır Uygulama bölümünde açıklandığı gibidir. Varsayılan olarak bu özel başlatıcı, kullanıcı videodaki ekranında demo kullanıcı oturumu başlatın. Bu sırada özel başlatıcı başlar ardından çıkış yaparsınız. OEM'ler özel başlatıcıyı ek olarak başka bir hizmet ya da etkinlik başlatamaz.
Perakende modunun bütünlüğünü korumak için tuş koruyucu devre dışı bırakıldı ve Hızlı Ayarlar'dan perakende modunu olumsuz etkileyebilecek belirli işlemler: Ayrıca aşağıdakiler de dahil olmak üzere izin verilmedi.
- Uçak modunu açma/kapatma.
- Kablosuz erişim noktalarını kaldırma veya değiştirme (Ayarlar).
- Operatör değiştiriliyor (Ayarlar).
- Hotspot'u yapılandırma (Ayarlar).
- Kullanıcı değiştirme.
Ayrıca, erişimi etkileyebilecek bazı genel ayarlara erişim de engellenir. perakende modunu devre dışı bırakın:
- Kablosuz ayarları'na dokunun.
- Hücresel ağ yapılandırma seçenekleri, özellikle hotspot'lar.
- Bluetooth yapılandırması.
- Yedekle ve Sıfırla, Tarih ve Zaman ve Mobil Ağlar (hiç görünmezler).
Kullanıcı bir süre (varsayılan olarak 90 saniye) boşta kalırsa perakende modu kullanıcıdan oturumdan çıkmasını veya devam etmesini isteyen bir sistem iletişim kutusu gösterir. Kullanıcı çıkmayı seçerse veya beş saniye boyunca hiçbir yanıt olmazsa, perakende modu geçerli demo kullanıcısını kaldırır, yeni bir demo kullanıcısına geçiş yapar döngüye devam eder. Ekran, güç düğmesine basarsanız birkaç saniye sonra otomatik olarak tekrar açılır.
Demo oturumundan çıkıldıktan sonra cihazlar kendi seslerini kapatır ve bazı genel aşağıdakiler dahil:
- Parlaklık
- Otomatik döndürme
- El feneri
- Dil
- Erişilebilirlik
Mağaza demo modundan çık
Perakende çalışanları, perakende modundan çıkmak için demo cihazın Cihaz yönetimi kapsamında kayıtlı değilse ve Bootloader'ı tıklayın.