comme le alors comment détecter GPS activé / désactivé lorsque toutes les modifications trouvées sur CrossConnectivit.Current.ConnectivityChanged code> Événement ajusté lorsque toute connexion change:
Crossgeolocator Code> Plugin en Xamarin.Forms? P> P>
3 Réponses :
Le meilleur moyen de savoir comment fonctionne tout projet open-source fonctionne via son code source :-). Voir le igéolocator Code> Code source de classe
pour l'interface disponible pour vous. P>
Dans votre cas, vous serez probablement très intéressé par l'événement code> positionné code>, qui se produit chaque fois que la position change. Il existe également des propriétés telles que Si vous souhaitez un événement lorsque la propriété d'écoute change, cela n'est pas implémenté actuellement. Vous pouvez toutefois créer une classe wrapper à travers laquelle vous accéderez au plug-in islistening code>,
iSgeolocationAvailable code> et
iségovalocessionenablenabled code> qui vous aident à trouver exactement dans quel état le GPS sur l'appareil est. P >
Crossgeolocator Code> et qui implémentera un tel événement lorsque
startlisteningasync code> ou
stoplisteningasync code> est appelé. < / p>
Il y a quelques choses que vous pouvez faire. Le plug-in Crossgeolocator n'a pas d'événement simple comme le plug-in de connectivité.
Premièrement, vous pouvez vérifier le à partir de là, vous pouvez accrocher à l'événement Tout la documentation est disponible sur le Github page ou Documentation . P> p> ISGOOLOCOCABLABLE CODE> et
Issupporté code>. Cela vous indiquera si ce plugin est pris en charge sur la plate-forme que vous utilisez et si l'utilisateur a accordé la permission à votre application pour lire les informations de localisation. Vous pouvez faire quelque chose comme ceci: p>
EventHandler
J'utilise déjà ce processus, mais en utilisant ce processus, j'ai besoin de vérifier chaque seconde pour la vérification de la connectivité.
Puisque vous voulez utiliser l'emplacement, vous avez probablement un certain code en place pour le faire déjà, je suppose? En outre, ceci est un événement, vous serez donc informé "automatiquement" chaque fois que quelque chose ne va pas, tout comme avec le plug-in CrossConnectivity
Bien que l'on puisse créer un tel événement artificiellement, il n'y a pas d'événement de ce type au niveau du système et je ne pense pas que quiconque a fait un plugin avec un tel événement. P>
Pour préciser, votre connectivité peut changer lorsque l'application fonctionne et il est logique de créer un tel événement afin que l'application puisse réagir à ce sujet. GPS ne peut pas être modifié lorsque l'application fonctionne - la seule chose que vous pouvez faire est de vérifier si elle est activée ou désactivée et qu'elle ne peut pas être effectuée sans quitter et entrer dans l'application et vous pouvez le vérifier avec l'API Crossgeolocator.Current.isgeolocalisationAvénement à la région code>. Vous pouvez affirmer que l'application peut perdre le signal GPS, mais les systèmes d'exploitation ne fonctionnent pas de cette façon et vous ne pouvez rappeler que le dernier emplacement connu et le temps qu'il a été reçu. P>
Je vous suggère d'utiliser GeolocatorPlugin.