PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE

Nouveauté WINDEV Mobile 23 !
  • Version nécessaire
  • Permissions requises
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Permet de trouver les balises Beacon à proximité de l'appareil.
Exemple
// Dans un musée, on souhaite afficher sur l'appareil du visiteur les informations
// sur l'oeuvre qu'il est en train de regarder. On associe à chaque balise Beacon
// le même UUID correspondant au musée et des numéros Major et Minor
// permettant d'identifier chaque balise de manière unique.
// On dispose une balise Beacon à côté de chaque oeuvre du musée.
// L'application doit appeler la fonction BeaconDétectePrécis avec une variable
// BeaconGroupe correspondant aux balises du musée.
// La procédure callback passée en paramètre à la fonction sera appelée à chaque fois
// qu'une nouvelle liste de balises Beacon sera détectée. Il suffit ensuite de trouver
// la balise la plus proche pour en déduire l'oeuvre que regarde le visiteur et afficher
// les informations correspondantes dans l'application.

// UUID du musée
sUUID est une chaîne = "f4231ab6-5ef2-6c99-4229-af6c72e0446e"
// Création d'une variable beaconGroupe correspondant aux balises du musée
groupeMusée est un beaconGroupe
groupeMusée..UUID = sUUID
// Lancement de la détection
BeaconDétectePrécis(groupeMusée, ProcDétection)
PROCÉDURE INTERNE ProcDétection(tabInfo est un tableau de beaconInfoDétection)
nDistanceMin est un entier
BaliseLaPlusProche est un beaconInfoDétection
POUR TOUT Information DE tabInfo
SI nDistanceMin = 0 _OU_ Information..Distance < nDistanceMin
BaliseLaPlusProche = Information
FIN
FIN
// Affichage des informations sur l'oeuvre associée à la balise
AfficheInfoOeuvre(BaliseLaPlusProche..Major, BaliseLaPlusProche..Minor)
FIN
Syntaxe
<Résultat> = BeaconDétectePrécis(<Groupe de balises> , <Nom de la procédure>)
<Résultat> : Booléen
  • Vrai si la détection a bien été démarrée,
  • Faux dans le cas contraire. Pour plus de détails sur l'erreur, utilisez la fonction ErreurInfo.
<Groupe de balises> : Variable de type beaconGroupe
Nom d'une variable de type beaconGroupe décrivant le groupe de balises Beacon recherchées.
<Nom de la procédure> : Chaîne de caractères (avec ou sans guillemets)
Procédure WLangage (également nommée "callback") appelée en cas de détection d'une nouvelle liste de balises Beacon.
Cette procédure est de la forme :
PROCEDURE <Nom de la Procédure>(<Tableau des infos de détection>)
où <Tableau des infos de détection> est une variable de type beaconInfoDétection décrivant les informations sur les balises Beacon détectées (identifiants, numéros Major/Minor, distance, etc.)
Remarques
  • Cette fonction effectue une analyse minutieuse des émissions Bluetooth autour de l'appareil enfin de détecter les balises Beacon et d'estimer leur distance. Cette analyse est consommatrice d'énergie : il est donc recommandé d'appeler uniquement cette fonction si au moins une balise du groupe se trouve à proximité.
    Pour cela, il est possible d'appeler la fonction BeaconDétecteEnArrièrePlan puis d'appeler la fonction BeaconDétectePrécis depuis la procédure callback exécutée lorsque l'application a détecté l'entrée dans la zone d'émission des balises du groupe.
    De plus, il est conseillé d'arrêter la détection précise dès que possible. La fonction BeaconArrêteDétectionPrécise permet d'arrêter la détection en cours : elle peut par exemple être appelée dans la procédure WLangage exécutée lorsque l'application a détecté la sortie de la zone d'émission des balises du groupe.
  • La détection précise des balises Beacon est effectuée uniquement lorsque l'application se trouve au premier plan. Lorsque l'application passe en arrière-plan, la détection est automatiquement suspendue et reprendra dès que l'application repassera au premier plan. La détection est stoppée définitivement lorsque l'application est arrêtée. Pour effectuer une détection en arrière-plan, utilisez la fonction BeaconDétecteEnArrièrePlan.
  • iPhone/iPad Lors de la génération de l'application, il est possible d'autoriser l'appel à la fonction BeaconDétectePrécis quand l'application est en arrière-plan (option "Autoriser les fonctions GPSSuitDéplacement et BeaconDétectePrécis à être appelées quand l'application est en arrière-plan" dans l'étape "Configuration" de l'assistant). Dans ce cas, la détection précise se poursuivra lorsque l'application sera en arrière-plan ou lorsque l'appareil sera en veille. Pour plus de détails, consultez Générer une application iOS.
  • Il n'est pas possible de lancer plusieurs détections précises simultanément. Si la fonction BeaconDétectePrécis est appelée alors qu'une détection est déjà en cours, la détection en cours sera arrêtée et une nouvelle détection sera lancée.
AndroidWidget Android

Version nécessaire

Les fonctions de gestion des balises Beacon sont disponibles uniquement sur les appareils disposant d'une version d'Android supérieure ou égale à la version 4.3 (api level 18).
Si la fonction est utilisée avec une version antérieure du système, une erreur fatale sera déclenchée.
Pour connaître la version du système Android sur laquelle s’exécute l’application, utilisez la fonction SysVersionAndroid.
AndroidWidget Android L'appareil doit supporter la technologie Bluetooth Low Energy (Bluetooth LE).
AndroidWidget Android

Permissions requises

L'utilisation de cette fonction entraîne la modification des permissions requises par l'application.
Permission requise : ACCESS_COARSE_LOCATION : Permet à l'application d'obtenir la position approximative de l'appareil.
Composantes
Android wd230android.jar
Version minimum requise
  • Version 23
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire