Mode démo en magasin

Android 7.1.1 prend en charge le mode démo en magasin au niveau du système, clients peuvent observer les appareils en action en magasin. Les appareils sont configurés pour la démonstration en magasin à l'aide d'une application de propriétaire de l'appareil afin de s'assurer que l'utilisation de l'appareil est qu'à certaines applications en mode démo. Les utilisateurs finaux ne doivent pas pouvoir ajouter un compte personnel sur un appareil de démonstration en magasin. Android 8.1 remplace cette prise en charge par créer utilisateurs de démonstration via le DevicePolicyManager createAndManageUser API. Cela permet une personnalisation beaucoup plus poussée des OEM par rapport au mode retail standard concernant la gestion des utilisateurs et des règles de l'appareil sur l'appareil de démonstration.

Si DevicePolicyManager Les API peuvent être utilisées sur des versions antérieures à Android 8.1, Impossible de créer des utilisateurs de type demo-type (DevicePolicyManager.MAKE_USER_DEMO) avec la propriété createAndManageUser dans les versions 8.0 et antérieures.

Implémentation sous Android 8.1 et versions ultérieures

Cette section présente les améliorations apportées à la plate-forme et décrit la démonstration en magasin. Android 8.1 et versions ultérieures.

Modifications de la plate-forme

Définir DEVICE_DEMO_MODE

Les appareils qui implémentent un mode de démonstration en magasin basé sur le propriétaire de l'appareil doivent définir Settings.Global.DEVICE_DEMO_MODE à 1 avant pour indiquer que l'appareil est en cours de provisionnement pour la démonstration en magasin . SystemServer (Serveur système) utilise cet indicateur pour gérer les aspects du mode Point de vente, comme le profil d'alimentation et SystemUI (UI du système).

Activer RetailDemoModeService

Sur les appareils sur lesquels le mode démo en magasin est implémenté, l'assistant de configuration définit une configuration globale paramètre Global.DEVICE_DEMO_MODE à true pour indiquer que l'appareil est passé en mode Point de vente. Le RetailDemoModeService crée un utilisateur de démonstration et y accède au démarrage de l'utilisateur 0, active le lanceur d’applications personnalisé spécifié dans une ressource de superposition et désactive SUW. Système Server et SystemUI utilisent également cet indicateur pour gérer les aspects du mode Retail.

Définir un lanceur d'applications ou un lecteur vidéo personnalisé

Les fabricants d'appareils peuvent spécifier un lanceur d'applications personnalisé en remplaçant le framework la ressource config_demoModeLauncherComponent spécifiée dans le fichier config.xml comme suit.

<!-- Component that is the default launcher when Retail Mode is enabled. -->
<string name="config_demoModeLauncherComponent">com.android.retaildemo/.DemoPlayer</string>

L'application de démonstration en magasin DemoPlayer située à l'adresse /packages/apps/RetailDemo. est le lanceur d'applications personnalisé par défaut dans le projet Android Open Source (AOSP). La L'application recherche une vidéo dans une partition d'appareil telle que /data/preloads/demo/retail_demo.mp4. et le lit en boucle. Lorsque l'utilisateur touche l'écran, le lanceur d'applications personnalisé désactive son composant d'activité, ce qui fait que le lanceur système par défaut démarrer.

Le composant personnalisé du lanceur d'applications personnalisé doit être marqué comme désactivé par défaut afin qu'il n'apparaisse pas dans des scénarios autres que la catégorie démographique. Dans le scénario de démonstration, Le serveur active le config_demoModeLauncherComponent spécifié lors du démarrage d'une nouvelle session de démonstration.

L'assistant de configuration recherche également la vidéo mentionnée précédemment pour fournir une l' affordance pour passer au mode de vente au détail. SUW peut être modifié pour rechercher d'autres Signe spécifique à l'OEM que le mode Point de vente est disponible si la vidéo ne fait pas partie la démonstration. S'il existe des partitions système A/B, la partition du système B doit contient la vidéo de démonstration sur /preloads/demo. Ceci est copié sur /data/preloads/demo au premier démarrage.

Personnaliser les applications préchargées pour le mode démo en magasin

Les applications préchargées peuvent personnaliser leur expérience pour le mode démo en magasin en appelant le UserManager.isDemoUser() API pour voir si l'application est lancée dans un environnement de démonstration.

Certaines restrictions sont définies dans l'utilisateur de la version de démonstration, comme pour les appareils gérés ou qui empêchent les applications et les utilisateurs d'effectuer certaines opérations. L'une de ces restrictions est DISALLOW_MODIFY_ACCOUNTS. Avec cette restriction, le AccountManager et Paramètres n'autorisez pas l'ajout de comptes. Certaines applications Google réagissent à cette restriction et afficher un message d'erreur. Les autres utilisateurs ne vous inviteront pas à créer un compte (par exemple, YouTube et Photos). Nous recommandons aux applications OEM de vérifier DISALLOW_MODIFY_ACCOUNTS est défini et gère le scénario en conséquence.

Mises à jour du système

Par défaut, lorsque le mode Point de vente est activé, les règles relatives aux appareils sont définies sur Over The Air (OTA) se mettent à jour automatiquement. Les appareils de vente au détail seront téléchargés, redémarrés et installés. la mise à jour (en respectant le seuil de batterie) sans intervention de l'utilisateur.

Application de démonstration en magasin

Pour implémenter le mode démo en magasin basé sur le propriétaire de l'appareil, Outil de contrôle des règles relatives aux appareils app pour être défini comme propriétaire de l'appareil. L'AOSP contient une application RetailDemo de référence dans /packages/apps/RetailDemo.

Les applications de propriétaire de l'appareil ne nécessitent pas de droits élevés ni d'installation préalable sur le et peut être téléchargée lors du processus de configuration ou de provisionnement. Elles sont généralement implémentées comme les applications traditionnelles, avec les éléments suivants : différences:

API dans DevicePolicyManager permettent aux propriétaires d'appareils et de profils d'appliquer différents paramètres règles. Certains éléments DevicePolicyManager applicables au mode démo en magasin sont indiquées ci-dessous.

  • Créer et gérer des utilisateurs

  • Redémarrez l'appareil.

  • Définir les packages autorisés de LockTask.

  • Installez les packages via PackageInstaller.

  • Empêcher la désinstallation de packages

  • Activer les mises à jour automatiques du système Les appareils téléchargeront et appliqueront automatiquement les mises à jour OTA.

  • Désactivez la protection du clavier.

  • Empêchez la configuration de mots de passe ou d'empreintes digitales.

  • Définissez un ensemble d'éléments Settings.Global sur la liste d'autorisation, Settings.Secure et Settings.System paramètres.

  • Définissez la règle d'autorisation sur PERMISSION_POLICY_AUTO_GRANT. accorde automatiquement toutes les autorisations d'exécution. Des autorisations peuvent aussi être accordées plus restreinte: une autorisation unique pour une seule application. Cela ne s'applique pas des autorisations de fonctionnement des applications, que les utilisateurs doivent toujours accorder au niveau de chaque utilisateur et de chaque application.

  • Définissez les restrictions utilisateur applicables au mode Point de vente, telles que définies dans Gestionnaire d'utilisateurs comme suit.

    • DISALLOW_MODIFY_ACCOUNTS
    • DISALLOW_USB_FILE_TRANSFER
    • DISALLOW_DEBUGGING_FEATURES
    • DISALLOW_CONFIG_WIFI
    • DISALLOW_CONFIG_BLUETOOTH
    • DISALLOW_INSTALL_UNKNOWN_SOURCES
    • DISALLOW_CONFIG_MOBILE_NETWORKS

Mettre à jour la vidéo de démonstration depuis le Web

L'application RetailDemo dans /packages/apps/RetailDemo a la possibilité de mettre à jour la vidéo de démonstration s'il y a une connectivité réseau. Pour configurer l'URL de téléchargement de la vidéo, remplacez les éléments suivants : dans l'application RetailDemo.

<!-- URL where the retail demo video can be downloaded from. -->
<string name="retail_demo_video_download_url"></string>

Si des vidéos différentes doivent être utilisées dans différentes régions, vous devez Les URL de téléchargement peuvent être configurées à l'aide de ressources de chaîne spécifiques aux paramètres régionaux. dans res/values-*/strings.xml. Par exemple, si des vidéos différentes doivent être utilisées aux États-Unis et de la Grande-Bretagne, les URL de téléchargement correspondantes peuvent être placées res/values-en-rUS/strings.xml et res/values-en-rGB/strings.xml, respectivement, comme indiqué ci-dessous.

  • Dans res/values-en-rUS/strings.xml:

    <string name="retail_demo_video_download_url">download URL for US video goes here</string>
    
  • Dans res/values-en-rGB/strings.xml:

    <string name="retail_demo_video_download_url">download URL for UK video goes here</string>
    

Cette vidéo est téléchargée une fois au maximum à chaque redémarrage de l'appareil. Lorsque vidéo sur l'appareil en cours de lecture, l'application RetailDemo s'exécute en arrière-plan Si l'URL de téléchargement est fournie et que la vidéo associée à cette URL est plus récente que en cours de lecture.

Si c'est le cas, l'application RetailDemo est téléchargée et la lecture de la vidéo commence. Une fois que la vidéo est téléchargé, il sera utilisé pour être utilisé dans toutes les sessions de démonstration à venir. Aucune des vérifications se produisent à nouveau jusqu'au redémarrage suivant.

Consignes pour les vidéos de démonstration

Les vidéos de démonstration doivent être en mode portrait. Si vous utilisez une tablette, en orientation naturelle, et leur durée doit être supérieure à cinq secondes. Contenu ne doit pas entraîner de brûlures d'écran, car la vidéo est lue en permanence lorsqu'elle est affichée.

Consultez les définitions des développeurs Android. des utilisateurs, profils et comptes, documentation de l'API Device Policy Manager et Exemple d'application Propriétaire de l'appareil pour en savoir plus.

Validation

CTS ne couvre pas le mode démo en magasin, car il s'agit d'une fonctionnalité facultative. Tests doivent être effectuées manuellement ou à l'aide de tests unitaires pour l'application de démonstration.

Session de démonstration

Configuration de la session de démonstration

Les appareils de démonstration en magasin peuvent démarrer en mode démo en magasin s'ils sont configurés pour ce mode de l'usine. Les employés du secteur du retail peuvent aussi activer le mode Retail directement dans l'assistant de configuration.

Mode démo en magasin

Figure 2. Mode de démonstration en magasin

Session de démonstration sur le Réseau Display

Lorsque l'appareil passe en mode Point de vente, il passe à un nouvel utilisateur de démonstration. lance automatiquement le lanceur d'applications personnalisé spécifié dans la ressource de superposition comme décrit dans la section Implémentation. Par défaut, Ce lanceur d'applications personnalisé lit la vidéo de démonstration en boucle jusqu'à ce que l'utilisateur appuie sur pour lancer une session utilisateur de démonstration. À ce moment-là, le lanceur d'applications personnalisé le lanceur d’applications système, puis se ferme. Les OEM peuvent modifier le lanceur d'applications personnalisé pour et lancer un autre service ou une autre activité à la fermeture.

Afin de maintenir l'intégrité du mode Point de vente, la protection du clavier est désactivée et certaines actions des Réglages rapides qui pourraient avoir un impact négatif sur le mode Point de vente sont également interdites, y compris les suivantes.

  • Bouton d'activation du mode Avion.
  • Suppression ou modification de points d'accès Wi-Fi (paramètres)
  • Modification de l'opérateur (Paramètres).
  • Configuration du point d'accès (paramètres).
  • Changement d'utilisateur.

De plus, l'accès à certains paramètres globaux susceptibles d'affecter mode retail en désactivant les éléments suivants:

  • Paramètres Wi-Fi.
  • Options de configuration des réseaux mobiles, en particulier les points d'accès
  • Configuration Bluetooth.
  • Sauvegarde et Réinitialiser, dater et "Réseaux mobiles" (ils n'apparaissent pas du tout).

Si l'utilisateur est inactif pendant un certain temps (90 secondes par défaut), le mode Point de vente affiche une boîte de dialogue système invitant l'utilisateur à quitter la session ou à continuer. Si l'utilisateur décide de quitter ou si aucune réponse ne s'affiche au bout de cinq secondes, supprime l'utilisateur actuel de la démonstration, le remplace par un nouvel utilisateur ; revient en boucle sur la vidéo d'origine. Si l'écran est éteint à l'aide du bouton Marche/Arrêt, il se rallumera automatiquement au bout de quelques secondes.

Lorsque vous quittez une session de démonstration, le son est coupé et certains paramètres généraux sont réinitialisés. y compris les suivants:

  • Luminosité
  • Rotation automatique
  • Lampe de poche
  • Langue
  • Accessibilité

Quitter le mode démo en magasin

Pour quitter le mode Point de vente, les employés doivent s'assurer que l'appareil de démonstration n'est pas enregistré dans la gestion des appareils et rétablissez la configuration d'usine de l'appareil le chargeur de démarrage.