Créer une application XREAL One Pro avec le SDK Unity

Créer une application XREAL One Pro avec le SDK Unity

Synthèse

Ce guide du SDK Unity pour XREAL One Pro montre aux développeurs et aux équipes métier comment créer et tester une application avec XREAL SDK 3.1.0. Le premier résultat est un APK Android qui s'ouvre via XREAL Control Glasses sur un téléphone compatible. Commencez par l'exemple officiel Hello MR, puis ajoutez un simple panneau d'instructions métier si vous devez présenter le contenu de vos propres processus.

Le premier build Hello MR ne nécessite aucun code personnalisé. En revanche, une expérience propre à votre activité exige un travail de développement Unity dès que les équipes ajoutent leurs propres étapes, commandes, flux de données, authentification ou connexion à un backend. Les lunettes XREAL One Pro sont un écran connecté, et non un ordinateur autonome : c'est donc le téléphone compatible qui exécute l'application. Vérifiez la compatibilité, les autorisations, le traitement des données et la gestion des appareils avec votre équipe technique interne avant un déploiement plus large.

Introduction

Le workflow du SDK Unity pour XREAL One Pro est un moyen pratique de tester une interface professionnelle mains libres, comme une liste de tâches, une vue d'assistance à distance ou une courte instruction de travail. Consultez la page produit XREAL One Pro chez VR Expert pour une présentation de l'appareil. Ce guide se concentre sur le parcours de développement Unity et sur les vérifications qui comptent avant un pilote professionnel : téléphone hôte compatible, bon plug-in XREAL, autorisations Android et premier build clair.

Configuration requise pour le SDK Unity XREAL One Pro

  • Méthode de développement : XREAL SDK pour Unity. Ce guide ne couvre pas le développement natif Android, Java ou Kotlin.
  • Documentation actuelle du SDK : version 3.1.0 au moment de la vérification. Consultez les dernières notes de version XREAL avant le développement ou le déploiement.
  • Versions d'Unity dans le guide de démarrage rapide : Unity 2021.3 LTS, 2022.3 LTS ou Unity 6000.0 LTS avec Android Build Support.
  • Hôte compatible : XREAL mentionne le Beam Pro ou des téléphones Android compatibles ; le guide de démarrage rapide cite les gammes phares Samsung S24 et ultérieures. Les notes de la version 3.1.0 indiquent le Beam Pro et le Samsung S25 comme compatibles testés.
  • Suivi sur le One Pro : commencez en 3DoF. XREAL SDK 3.1.0 ajoute le 6DoF pour la gamme One avec XREAL Eye fixé et un firmware des lunettes mis à jour.
  • Connexion du téléphone : le téléphone doit disposer d'une sortie vidéo USB C DisplayPort et, séparément, d'une compatibilité hôte avec le XREAL SDK. La sortie d'affichage seule ne garantit pas la prise en charge du SDK.

Avant d'ouvrir Unity

· Téléphone hôte compatible : utilisez le Beam Pro ou un téléphone répertorié comme compatible dans la documentation actuelle du SDK XREAL. Le guide de démarrage rapide mentionne actuellement les gammes phares Samsung S24 et suivantes ; les notes de version 3.1.0 indiquent le Beam Pro et le Samsung S25 comme hôtes compatibles testés (XREAL teste le S24 sous Android 14 et le S25 sous Android 15). Évitez de préférence de passer le téléphone à Android 16, car la documentation de XREAL comporte l'avertissement « Veuillez ne pas mettre à niveau vos appareils de développement vers Android 16 », et désactivez Samsung DeX pendant le développement.

· Unity : installez un éditeur Unity LTS répertorié par XREAL avec Android Build Support. S'il manque, ajoutez Android Build Support depuis Unity Hub > Installs > (votre éditeur) > Add modules.

· Outils Android SDK : installez Android SDK 12.0 (API 31) ou une version ultérieure depuis Android Studio > More Actions > SDK Manager, ou Tools > SDK Manager dans un projet Android Studio ouvert. Il s'agit uniquement de la chaîne d'outils de build Android pour Unity, et non d'un workflow d'application native.

· SDK et runtime : téléchargez XREAL SDK for Unity 3.1.0 depuis la page de téléchargement développeurs de XREAL. Récupérez ControlGlasses 3.1.0 via le lien figurant dans la note de version du SDK 3.1.0 ; la page de téléchargement propose encore l'ancien build 1.1.0, qui correspond au SDK 3.0.0. Consultez les notes de firmware actuelles avant les tests.

· Conditions du SDK et avis sur les données : avant le développement, lisez et acceptez les conditions actuelles des XREAL APIs (XREAL APIs Terms). XREAL exige que les développeurs indiquent comment le SDK collecte et traite les données dans l'application, et recommande de mentionner XREAL SDK et de fournir un lien vers sa politique de confidentialité. Ajoutez ces éléments aux informations de confidentialité et au processus de validation propres à votre organisation.

· Câble des lunettes : utilisez une connexion USB C prenant en charge la vidéo DisplayPort. Vérifiez aussi que le téléphone est un hôte compatible avec le SDK, car il s'agit d'une vérification distincte.

Créer et exécuter la première application XREAL One Pro

Étape 1 Créer un projet Unity pour Android

· Ouvrez Unity Hub. Sélectionnez Projects, puis New project.

· Choisissez un modèle. Sélectionnez un modèle 3D, saisissez un nom de projet clair tel que `BusinessXREALPilot`, puis cliquez sur Create project.

· Passez à Android. Dans l'éditeur Unity, ouvrez File > Build Settings ou, dans Unity 6, l'Android Build Profile. Sélectionnez Android et choisissez Switch Platform.

Vérification : la plateforme Android est sélectionnée et Unity a terminé l'importation du projet.

Étape 2 Installer les packages XR d'Unity

· Ouvrez Package Manager. Dans l'éditeur Unity, choisissez Window > Package Manager.

· Sélectionnez le Unity Registry. Utilisez le menu des sources de packages en haut à gauche, puis recherchez XR Interaction Toolkit.

· Installez le toolkit. Sélectionnez XR Interaction Toolkit (XREAL prend en charge les versions 2.5.x et 3.0.x) et cliquez sur Install. Ouvrez son onglet Samples et importez Starter Assets et Hands Interaction Demo ; d'après les notes de dépannage de XREAL, HelloMR affiche des prefabs manquants sans l'exemple consacré aux mains.

· Limitez la taille du premier build. Laissez AR Foundation de côté. Le tableau de compatibilité de XREAL indique que le suivi de plans, le suivi d'images, le suivi des mains, le maillage de profondeur et les ancres spatiales ne sont pas pris en charge sur la gamme XREAL One, avec ou sans le module caméra ; ces fonctionnalités nécessitent les Air 2 Ultra, de sorte qu'un prototype One Pro ne peut pas les utiliser.

Vérification : XR Interaction Toolkit apparaît dans le projet et son exemple Starter Assets est importé.

Étape 3 Importer le XREAL SDK pour Unity

· Ouvrez le menu des packages. Dans Package Manager, cliquez sur le bouton plus et choisissez Add package from tarball.

· Sélectionnez l'archive du SDK. Accédez au fichier `com.xreal.xr.tar.gz` téléchargé et cliquez sur Open.

· Importez le premier exemple. Sélectionnez XREAL XR Plugin dans Package Manager, ouvrez Samples et importez Interaction Basics. N'importez pas l'exemple AR Features : ses fonctionnalités de plans, d'images et d'ancres ne fonctionnent pas sur la gamme One.

Vérification : XREAL XR Plugin figure dans Package Manager et Interaction Basics peut être importé.

Étape 4 Activer le plug-in XREAL pour Android

· Ouvrez Project Settings. Choisissez Edit > Project Settings > XR Plug in Management.

· Sélectionnez Android. Ouvrez l'onglet Android et cochez XREAL.

· Appliquez les correctifs du projet. Si Project Validation apparaît avec des avertissements, ouvrez-le et cliquez sur Fix All à côté des correctifs requis. Attendez qu'Unity ait fini de modifier les paramètres.

Vérification : l'onglet Android indique que XREAL est activé et les éléments de validation requis sont corrigés.

Étape 5 Définir la prise en charge de l'appareil One Pro et le suivi

· Ouvrez la page des paramètres XREAL. Dans Project Settings, sélectionnez XR Plug in Management > XREAL.

· Vérifiez la catégorie d'appareil. Sous Support Devices, activez la catégorie Vision pour les lunettes de la gamme XREAL One.

· Choisissez le suivi. Réglez Initial Tracking Type sur MODE_3DOF pour les lunettes One Pro sans XREAL Eye. Ne choisissez MODE_6DOF que si XREAL Eye est fixé et que le firmware des lunettes a été mis à jour comme indiqué pour le SDK 3.1.0.

· Choisissez l'entrée pour le prototype. Réglez Initial Input Source sur Controller afin que le téléphone Android compatible serve de contrôleur à l'application. Le rayon du contrôleur est configuré à l'étape 11.

Vérification : le projet est configuré pour la gamme XREAL One et le mode de suivi correspond au matériel connecté.

Étape 6 Définir les valeurs de build Android

· Ouvrez Player Settings. Revenez à File > Build Settings ou à l'Android Build Profile, sélectionnez Player Settings, puis ouvrez Other Settings.

· Attribuez un identifiant unique à l'application. Saisissez un Package Name au format domaine inversé, par exemple `com.companyname.workflowpilot`. Ne conservez pas l'identifiant de l'exemple dans un projet de production.

· Définissez l'identité de l'application. Dans cette même zone de Player Settings, renseignez Company Name et Product Name avec le nom de votre organisation et celui de l'application pilote. Dans Resolution and Presentation, réglez Default Orientation sur Portrait, comme indiqué dans le guide de démarrage rapide de XREAL.

· Définissez les options graphiques. Conformément au guide de démarrage rapide de XREAL, désactivez Auto Graphics API et utilisez OpenGLES3.

· Définissez les niveaux d'API Android. Réglez Minimum API Level sur Android 10 ou ultérieur et Target API Level sur Automatic (highest installed). Installez Android SDK API 31 ou ultérieure dans SDK Manager. Il s'agit de paramètres distincts : les outils SDK installés d'une part, la version minimale de l'application d'autre part.

· Définissez l'architecture Android. Dans Player Settings > Other Settings > Configuration, activez ARM64 pour le téléphone cible et réglez Scripting Backend sur IL2CPP pour les builds ARM64. XREAL documente cette exigence pour les builds ARM64.

Vérification : le projet utilise l'identifiant de package et les paramètres Android requis pour le build Unity.

Étape 7 Réussir les vérifications du manifeste Android et des autorisations

· Utilisez d'abord le manifeste généré. Unity et le package XREAL génèrent ou fusionnent les entrées du manifeste Android pendant le build. Ne créez pas de manifeste Android personnalisé pour un exemple de base, sauf si un paramètre XREAL ou une fonctionnalité documentée l'exige. Le critère de validation du manifeste est que l'application finale déclare les autorisations et la configuration requises par ses fonctionnalités.

· Ne sélectionnez que les autorisations nécessaires. Dans Project Settings > XR Plug in Management > XREAL, ouvrez Android Permissions. N'activez Camera que pour une fonctionnalité utilisant la caméra, Audio que si l'application a besoin d'accéder à l'audio, et Vibration que si l'application utilise le retour haptique.

· Accordez l'autorisation d'affichage à l'exécution. Lorsque Control Glasses demande l'autorisation au lancement, autorisez Control Glasses à s'afficher par-dessus les autres applications. Si vous avez ignoré la demande, ouvrez Paramètres Android > Applications > Accès spécial des applications > Afficher par-dessus d'autres applications > Control Glasses et activez l'option. Les libellés exacts peuvent varier selon le téléphone.

Vérification : le package XREAL est configuré uniquement pour les autorisations dont votre prototype a besoin, et Control Glasses peut s'afficher par-dessus les autres applications au lancement.

Étape 8 Ouvrir Hello MR et vérifier la scène

· Trouvez l'exemple importé. Dans la fenêtre Project d'Unity, ouvrez Assets > Samples > XREAL XR Plugin > la version du package installée > Interaction Basics.

· Ouvrez la scène d'exemple. Double-cliquez sur `HelloMR.unity`. S'il n'y figure pas, revenez à Window > Package Manager > XREAL XR Plugin > Samples et importez Interaction Basics.

· Enregistrez la scène. Choisissez File > Save. Consultez la Hierarchy et vérifiez que les objets de l'exemple sont visibles.

Vérification : Hello MR s'ouvre sans ressources d'exemple manquantes. Cet exemple vous fournit une base de référence sans code personnalisé.

Étape 9 Ajouter un panneau d'instructions métier en C sharp avec Unity

· Décidez s'il faut ajouter du code. Ignorez cette étape pour générer l'exemple Hello MR non modifié. Suivez-la si vous souhaitez que le prototype affiche vos propres textes d'instructions métier.

· Créez un Canvas en world space. Dans la Hierarchy, faites un clic droit > UI > Canvas. Dans la Hierarchy, placez le Canvas directement à la racine de la scène ou sous XR Origin (ne le rattachez pas directement à Main Camera, afin d'éviter qu'il reste rigidement figé face au regard). Réglez Render Mode sur World Space. Dans Rect Transform, définissez la position sur X 0, Y 0, Z 1.5 (devant le point de départ de l'utilisateur), la rotation sur 0, 0, 0 et l'échelle sur 0.001 sur tous les axes.

· Ajoutez le texte de la tâche et du statut. Dans la Hierarchy, faites un clic droit sur Canvas > UI > Text - TextMeshPro. Importez TMP Essentials si Unity le demande. Renommez le premier objet texte InstructionText. Créez un second objet Text - TextMeshPro nommé StatusText. Donnez aux deux des zones de texte lisibles, par exemple largeur 900, hauteur 180, taille de police 42. Placez StatusText sous l'instruction.

· Ajoutez un bouton de validation. Dans la Hierarchy, faites un clic droit sur Canvas > UI > Button - TextMeshPro. Renommez-le MarkCompleteButton et définissez son libellé visible sur Mark complete. Si la scène ne contient pas d'EventSystem, créez-en un via Hierarchy > clic droit > UI > Event System. Créez dans Assets un C Sharp Script nommé BusinessChecklistDisplay et ouvrez-le dans votre éditeur de code Unity.

Vérification : la scène contient un Canvas en world space, un objet texte TextMeshPro et un nouveau fichier de script C sharp.

using TMPro; using UnityEngine; using UnityEngine.UI;

public class BusinessChecklistDisplay : MonoBehaviour { [SerializeField] private TMP_Text instructionText; [SerializeField] private TMP_Text statusText; [SerializeField] private Button completeButton;

[TextArea(2, 5)] [SerializeField] private string instruction = "Review the assigned task.\nConfirm the required item.";

private void Start() { if (instructionText == null || statusText == null || completeButton == null) { Debug.LogError("Assign the text fields and button in the Inspector.", this); return; }

instructionText.text = instruction; statusText.text = "Status: Not complete"; completeButton.onClick.AddListener(MarkComplete); }

private void MarkComplete() { statusText.text = "Status: Complete (local demo)"; completeButton.interactable = false; }

private void OnDestroy() { if (completeButton != null) completeButton.onClick.RemoveListener(MarkComplete); } }

Périmètre pour les développeurs : ce code affiche des instructions et modifie le statut localement lorsque le bouton est sélectionné. Il n'enregistre pas de tâche dans un système de l'entreprise, n'authentifie pas d'utilisateur et n'envoie aucune donnée sur un réseau. Ces fonctionnalités nécessitent un code applicatif adapté à l'API, à la gestion des identités et à la conception du traitement des données de votre organisation. Ne placez ni identifiants de connexion ni véritables données métier dans l'APK.

Étape 10 Relier le script au panneau d'instructions

· Attendez la compilation d'Unity. Enregistrez le script dans l'éditeur de code, revenez dans Unity et attendez que l'indicateur de compilation disparaisse.

· Associez le script. Faites glisser `BusinessChecklistDisplay` depuis la fenêtre Project sur le Canvas dans la Hierarchy.

· Affectez les champs de l'interface. Sélectionnez le Canvas. Dans l'Inspector, trouvez Business Checklist Display. Faites glisser InstructionText et StatusText depuis la Hierarchy dans les champs correspondants, puis faites glisser MarkCompleteButton dans Complete Button.

· Définissez les valeurs d'exemple. Dans ce même composant de l'Inspector, remplacez Instruction par un texte de démonstration approuvé et non confidentiel. Enregistrez la scène. Après sélection, le bouton remplace le texte de StatusText par « Complete (local demo) » ; il ne soumet ni n'enregistre aucun résultat métier réel.

Vérification : l'Inspector montre les deux champs de texte et le bouton affectés, et le texte de statut change lorsque vous sélectionnez Mark complete dans l'éditeur Unity.

Étape 11 Configurer la sélection au contrôleur pour l'interface

· Définissez le module d'entrée de l'EventSystem. Sélectionnez EventSystem dans la Hierarchy. Supprimez Standalone Input Module s'il est présent, puis utilisez Add Component pour ajouter XR UI Input Module. Si le preset XRI Starter Assets est disponible, appliquez XRI Default XR UI Input Module afin que le module dispose des actions d'entrée attendues.

· Définissez le raycaster du Canvas. Sélectionnez Canvas. Supprimez Graphic Raycaster et ajoutez Tracked Device Graphic Raycaster. Cela permet à un rayon XR suivi de cibler le bouton.

· Activez l'interaction avec l'interface sur le rayon du contrôleur. Dans XR Origin, sélectionnez l'objet contrôleur doté de XR Ray Interactor. Dans sa section UI Interaction, activez Interaction with UI GameObjects. Conservez le réglage Controller de l'Initial Input Source XREAL défini à l'étape 5.

· Vérifiez la chaîne du contrôleur. L'exemple Interaction Basics devrait fournir les objets contrôleur et les actions d'entrée. Si XR Origin ne comporte pas de XR Ray Interactor, importez l'exemple XRI Starter Assets et utilisez sa configuration XR Origin/contrôleur avant le build.

Vérification : dans l'éditeur Unity, le rayon du contrôleur met en surbrillance le bouton Mark complete, et sa sélection modifie le texte de statut. Répétez ce test sur le téléphone compatible et les lunettes avant d'utiliser ce parcours dans un pilote.

Étape 12 Facultatif : relier la validation des tâches à une API métier

Notions d'API métier à connaître avant de coder

· API REST : une adresse web et un format de requête convenu qui permettent à l'application d'échanger des données avec un service de l'entreprise.

· Jeton d'accès : un identifiant de courte durée émis après une connexion approuvée ; l'application l'envoie pour prouver que l'utilisateur est autorisé à agir.

· Clé d'idempotence : un identifiant de requête unique qui permet au serveur de reconnaître une nouvelle tentative et d'éviter d'enregistrer deux fois la même validation.

· HTTPS : une communication réseau chiffrée qui protège les données pendant leur transit entre le téléphone et le serveur.

· Définissez d'abord le contrat d'API de l'entreprise. Demandez à votre équipe plateforme l'endpoint HTTPS, les champs JSON acceptés, la source d'identité des utilisateurs, l'émetteur des jetons d'accès, la réponse de succès et la politique de nouvelles tentatives. L'exemple ci-dessous envoie taskId, operatorId, requestId et completedAtUtc ; faites-les correspondre à l'API de votre entreprise avant utilisation. Utilisez des identifiants opaques approuvés par votre organisation, et non des noms ou des données sensibles.

· Activez l'accès réseau pour ce build. Pour la version API de l'application, ouvrez Edit > Project Settings > Player > Android > Other Settings > Configuration et réglez Internet Access sur Require. Relancez le build et inspectez le manifeste fusionné pour vérifier la présence de android.permission.INTERNET. Cette autorisation n'affiche aucune demande Android.

· Ajoutez un script connecteur. Dans Unity, créez `BusinessTaskApi.cs`, collez les deux blocs de code consécutifs dans ce même fichier, dans l'ordre, puis enregistrez-le. Le second bloc se poursuit à l'intérieur de SubmitCompletion. L'endpoint est un espace réservé ; remplacez-le par l'endpoint approuvé de l'entreprise. Tenez le jeton d'accès à l'écart de l'Inspector, du code source, de l'APK et des journaux.

using System; using System.Collections; using System.Text; using UnityEngine; using UnityEngine.Networking;

[Serializable] public class TaskCompletionPayload { public string taskId; public string operatorId; public string requestId; public string completedAtUtc; }

public class BusinessTaskApi : MonoBehaviour { [SerializeField] private string completionEndpoint = "https://api.example.com/v1/task-completions";

public IEnumerator SubmitCompletion( string taskId, string operatorId, string accessToken, string requestId, Action<bool, string> onComplete) { if (string.IsNullOrWhiteSpace(taskId) || string.IsNullOrWhiteSpace(operatorId) || string.IsNullOrWhiteSpace(accessToken) || string.IsNullOrWhiteSpace(requestId)) { onComplete?.Invoke(false, "Missing task, user, token, or request ID."); yield break; }

if (!Uri.TryCreate(completionEndpoint, UriKind.Absolute, out Uri endpoint) || endpoint.Scheme != Uri.UriSchemeHttps) { onComplete?.Invoke(false, "Use the approved HTTPS API endpoint."); yield break; }

var payload = new TaskCompletionPayload { taskId = taskId, operatorId = operatorId, requestId = requestId, completedAtUtc = DateTime.UtcNow.ToString("o") }; byte[] body = Encoding.UTF8.GetBytes(JsonUtility.ToJson(payload));

using (var request = new UnityWebRequest(completionEndpoint, "POST")) { request.uploadHandler = new UploadHandlerRaw(body); request.downloadHandler = new DownloadHandlerBuffer(); request.timeout = 20; request.SetRequestHeader("Content-Type", "application/json"); request.SetRequestHeader("Authorization", "Bearer " + accessToken); request.SetRequestHeader("Idempotency-Key", requestId);

yield return request.SendWebRequest();

bool accepted = request.result == UnityWebRequest.Result.Success && request.responseCode >= 200 && request.responseCode < 300; string message = accepted ? "Completion accepted by the business system." : "Request failed (HTTP " + request.responseCode + "). " + request.error; onComplete?.Invoke(accepted, message); } } }

· Appelez le connecteur depuis le bouton. Ajoutez un composant `BusinessTaskApi` au Canvas et affectez-le à `taskApi` dans `BusinessChecklistDisplay`. Remplacez la méthode `MarkComplete`, purement locale, par un appel de coroutine une fois que le SDK d'identité de votre entreprise fournit un jeton d'accès valide et que le système métier fournit les identifiants de tâche et d'opérateur :

· Câblez l'action authentifiée. Dans le script BusinessChecklistDisplay existant, le bouton appelle actuellement la méthode locale MarkComplete. Pour la version de production, modifiez ce gestionnaire afin que le processus de connexion approuvé par l'entreprise obtienne un jeton d'accès et appelle SubmitToBusinessSystem(token). N'ajoutez pas de formulaire nom d'utilisateur/mot de passe et ne stockez pas de jeton dans la scène.

// Fields to add to BusinessChecklistDisplay: [SerializeField] private BusinessTaskApi taskApi; [SerializeField] private string taskId; // Set from your approved task source. [SerializeField] private string operatorId; // Set from your approved identity source. // Call this after obtaining a short-lived token from the company identity SDK. private void SubmitToBusinessSystem(string accessToken) { string requestId = System.Guid.NewGuid().ToString("N"); StartCoroutine(taskApi.SubmitCompletion( taskId, operatorId, accessToken, requestId, HandleCompletionResult)); } private void HandleCompletionResult(bool accepted, string message) { statusText.text = accepted ? "Status: Submitted" : "Status: Not submitted"; Debug.Log(message); // Do not log tokens or sensitive business data. }

Important : `accessToken` doit provenir de votre fournisseur de connexion approuvé lors de l'exécution. Le nom de fonction ci-dessus est un point de transfert, et non une implémentation complète de la gestion des identités. Configurez l'autorisation côté API pour la tâche et l'utilisateur, validez chaque champ sur le serveur, utilisez un identifiant de requête stable lors des nouvelles tentatives et ne désactivez pas le bouton tant que le serveur n'a pas accepté la requête. Adaptez le connecteur au schéma de réponse de votre API et à votre version d'Unity avant la mise en production.

Vérification : dans un environnement de test, vérifiez qu'une requête autorisée est acceptée, qu'un jeton expiré ou non autorisé est rejeté, qu'un dépassement de délai laisse la tâche visiblement non soumise, et qu'une nouvelle tentative avec le même identifiant de requête ne crée pas de doublon.

Étape 13 Ajouter la scène Hello MR au build Android

· Ouvrez la fenêtre de build. Choisissez File > Build Settings. Dans Scenes In Build, cliquez sur Add Open Scenes et vérifiez que HelloMR est listée et cochée.

· Pour Unity 6. Ouvrez l'Android Build Profile actif et ajoutez la scène HelloMR actuellement ouverte à sa liste de scènes.

Vérification : le build Android inclut la scène que vous venez de tester et de personnaliser.

Étape 14 Générer le premier APK

· Vérifiez qu'Android est actif. Contrôlez la plateforme sélectionnée dans Build Settings ou dans l'Android Build Profile.

· Générez l'application. Cliquez sur Build, choisissez un dossier de sortie et nommez le fichier `BusinessXREALPilot.apk`.

· Inspectez le manifeste final. Ouvrez Android Studio et choisissez Build > Analyze APK, puis sélectionnez BusinessXREALPilot.apk. Dans AndroidManifest.xml, vérifiez le nom du package et assurez-vous que les autorisations déclarées correspondent aux fonctionnalités de ce pilote. Contrôlez l'APK généré, car il contient le manifeste fusionné qu'Unity installera.

· Conservez une copie de test versionnée. Pour un pilote professionnel, stockez l'APK avec sa version d'Unity, la version du XREAL SDK, le modèle de téléphone et la date du test, afin que l'équipe puisse reproduire le même build.

Vérification : Unity crée l'APK sans erreur de build, et le manifeste résolu a été vérifié avant l'installation.

Étape 15 Installer l'APK sur un téléphone Android compatible

· Connectez le téléphone à l'ordinateur. Utilisez l'USB ou configurez ADB sans fil. Sur le téléphone, activez les Options pour les développeurs et le débogage USB si vous installez par câble.

· Installez l'APK. Utilisez Build and Run dans Unity ou exécutez `adb install -r BusinessXREALPilot.apk` depuis un terminal où ADB est disponible.

· Acceptez les demandes d'Android. Confirmez les demandes d'installation et de débogage sur le téléphone. Conservez l'APK sur le même téléphone compatible que celui que vous prévoyez d'utiliser avec les lunettes.

Vérification : la nouvelle application Unity apparaît dans la liste des applications du téléphone.

Étape 16 Lancer l'application métier via Control Glasses

· Connectez les lunettes. Déconnectez le téléphone de l'ordinateur de développement et branchez les XREAL One Pro sur la sortie USB C DisplayPort du téléphone.

· Ouvrez l'application runtime. Sur le téléphone, ouvrez Control Glasses. Trouvez `BusinessXREALPilot` dans sa liste d'applications et appuyez dessus. Sur le Beam Pro, utilisez plutôt MyGlasses.

· Accordez les accès demandés. Autorisez Control Glasses à s'afficher par-dessus les autres applications si Android le demande. N'accordez l'accès Camera, Audio ou Vibration que si l'application Unity utilise ces fonctionnalités et demande l'autorisation correspondante.

· Vérifiez le résultat. Vérifiez que Hello MR et le panneau d'instructions métier facultatif sont visibles dans les lunettes. Tournez doucement la tête pour vérifier que la vue suit le mode 3DoF attendu.

Vérification : l'application s'exécute sur le téléphone compatible et son affichage apparaît dans les XREAL One Pro.

Vérifications du pilote avant une utilisation plus large

· Testez avec un contenu d'exemple approuvé. Excluez les données personnelles, clients et confidentielles des premiers prototypes.

· Vérifiez la combinaison exacte de téléphone et de firmware. Ne partez pas du principe qu'une connexion vidéo USB C garantit la compatibilité avec le XREAL SDK.

· Vérifiez l'interaction et la lisibilité. Contrôlez la taille de police, le contraste, le positionnement et le nombre d'actions nécessaires lorsque les lunettes sont portées.

· Passez en revue les exigences de l'entreprise. Avant une utilisation plus large, vérifiez l'authentification, le stockage des données, l'accès réseau, la distribution des mises à jour, la gestion des appareils et les exigences de confidentialité applicables, comme le RGPD.

· Gardez un périmètre réaliste pour l'application. Ce projet démontre qu'une application Unity peut fonctionner sur cette configuration. Il ne prouve pas à lui seul qu'elle est prête pour la production, qu'elle dispose d'une certification de sécurité ni qu'elle est compatible avec tous les téléphones Android.

Conclusion

Un prototype professionnel pour XREAL One Pro commence dans Unity avec le XREAL SDK actuel, un hôte Android compatible, le plug-in et les paramètres d'appareil XREAL, ainsi que les bonnes autorisations de manifeste et d'exécution. La scène Hello MR fournit un premier build sans code, tandis qu'un petit composant Unity en C sharp peut ajouter un panneau d'instructions métier simple avant que l'équipe ne génère et n'installe un APK. Lancez l'application via Control Glasses et testez-la avec le téléphone, le firmware, le contenu et le flux de travail exacts prévus pour le pilote. Cette démarche aide les entreprises à vérifier si un logiciel spatial mains libres répond à leurs besoins, à identifier tôt les exigences techniques et de confidentialité, et à prendre des décisions plus éclairées avant d'investir dans un déploiement plus large.

Consultez la page produit XREAL One Pro pour connaître les détails du produit, puis contactez VR Expert pour déterminer si l'appareil et la configuration logicielle répondent aux exigences de développement et de pilote de votre organisation.

Lien connexe suggéré : Test des XREAL One Pro pour les professionnels

João Noronha

Rédigé par

João Noronha

Spécialiste XR et contenu immersif chez VR Expert

João Noronha est spécialiste XR et contenu immersif chez VR Expert, avec un fort intérêt pour les technologies émergentes et leurs applications concrètes. Il se concentre sur la transformation des évolutions complexes en VR, AR, lunettes IA et technologies immersives en contenus clairs et pratiques destinés aux entreprises et professionnels qui explorent le secteur XR.