0
votes

Impossible d'obtenir l'emplacement de l'utilisateur dans l'application Flutter

J'essaie d'obtenir un emplacement utilisateur à l'aide de emplacement package mais je suis incapable obtenir l'emplacement sans message d'erreur. Code ne transmet jamais le attendre l'emplacement.getlocation (); code> la ligne.

J'ai essayé le package de localisation de la nivelation de 23,5 à 1,4,0, mais cela n'a pas aidé à faire ça Étant donné que cette version a fonctionné dans le passé, mais après la mise à niveau du studio Android et de la balibine de Flutter, les dernières choses ne fonctionnent pas comme avant. J'ai également essayé d'utiliser un paquet Geolocator, mais j'ai fait face au même problème. P>

voici mon code. P> xxx pré>

Il n'y a pas d'erreur dans la console J'utilise VSCODE Voici une sortie de médecin battement. P>

[√] Flutter (Channel beta, v1.5.4-hotfix.1, on Microsoft Windows [Version 10.0.17134.765], locale en-US)
    • Flutter version 1.5.4-hotfix.1 at C:\Users\kawak\sdk\flutter
    • Framework revision 09cbc34a0b (5 weeks ago), 2019-04-30 15:44:27 -0700
    • Engine revision 52c7a1e849
    • Dart version 2.3.0 (build 2.3.0-dev.0.5 a1668566e5)


[√] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    • Android SDK at D:\androidsdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-28, build-tools 28.0.3
    • ANDROID_HOME = D:\androidsdk
    • Java binary at: D:\android\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b01)
    • All Android licenses accepted.

[!] Android Studio (version 3.4)
    • Android Studio at D:\android
    X Flutter plugin not installed; this adds Flutter specific functionality.
    X Dart plugin not installed; this adds Dart specific functionality.
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b01)

[√] VS Code, 64-bit edition (version 1.34.0)
    • VS Code at C:\Program Files\Microsoft VS Code
    • Flutter extension version 3.1.0

[!] Connected device
    ! No devices available

! Doctor found issues in 2 categories.


1 commentaires

Alhamdulillah a trouvé une solution que j'utilisais Beta Channel se déplaçant à Stable One était nécessaire


4 Réponses :


0
votes

Vous utilisez une prise sans impression de l'erreur .. Supprimez-la et vous aurez probablement probablement un message magnifique vous dit quelle erreur est!


2 commentaires

J'ai essayé d'impression d'erreur, mais le bloc de capture ne fonctionne pas mais merci.


^^; Avez-vous essayé d'autoriser votre application manuellement à votre application pour accéder à la localisation (dans les paramètres Android, pour voir si le problème vient de là)?



0
votes

Essayez avec la bibliothèque de flutter: emplacement xxx


0 commentaires

4
votes

C'est la méthode que j'utilise pour obtenir l'emplacement. J'espère que cela vous aide.

void _getLocation() async {
    var location = new Location();
    try {
      await location.getLocation().then((onValue) {
              print(onValue.latitude.toString() + "," + onValue.longitude.toString());
      });
    } catch (e) {
      print(e);
      if (e.code == 'PERMISSION_DENIED') {
       _handlePermissionDenied();
      }
    }
  }


1 commentaires

merci mais j'ai essayé la géolocalisation mais faisait face exacte au même problème, comment les deux pangines peuvent-elles avoir le même problème en même temps



0
votes

Il est important d'utiliser l'emplacement Plugin .

dans la documentation du plugin il y a un Suggestion d'ajouter des autorisations:

  • iOS: en info.Plist (iOS / Runner) NslocationQueinUnususagedescription et NslocalationWawaysSuscriptions doit être ajouté. Ce dernier est important si vous allez écouter constamment l'emplacement.

  • Android: Il n'ya pas de nécessité d'ajouter une autorisation car le plugin le fait déjà en interne. (Si vous utilisez Flutter version 1.12 +)

    Maintenant, afin de demander l'emplacement, nous devrions toujours vérifier l'état du service de localisation manuellement et l'état de l'autorisation: xxx

    Cette fonction est appelée après que l'utilisateur clique Sur l'icône GPS pour centrer / obtenir l'emplacement actuel, mais selon vos besoins, vous devez l'appeler partout où vous en avez besoin


0 commentaires