mapbox / mapbox/mapbox-maps-flutter

Fix issue Mapbox used after being disposed

Ouverte
#751 2 commentaires 1 réaction 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Langage dominant
Dart
Étoiles
380
Forks
204
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

I have a logout button in my app.
After logging out, an exception is being thrown which says: A MapboxMap was used after being disposed.
Once you have called dispose() on a MapboxMap, it can no longer be used.

Below are the relevant codes:
```
void _showLogoutConfirmationDialogUsing(
BuildContext context,
) =>
ActionDialog.show(
context,
content: context.localize.areYouSureYouWantToLogout,
onActionDismissed: () {
Navigator.of(
context,
).pop();
},
onActionConfirmed: () {
Navigator.of(
context,
).pop();

context.read().add(
const Web3AuthLogoutEvent.logout(),
);
},
);
```

```
@override
void dispose() {
_mapboxMap?.dispose();
_clickedRestriction.dispose();
_centerLocationNotifier.dispose();
_mapStyleNotifier.dispose();

super.dispose();
}
```

https://github.com/user-attachments/assets/b79c8405-ffd2-4216-a27f-681de923c213

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par le callback de logout fourni et l’implémentation de dispose() du widget, puis reproduisez le flux de logout en traçant les utilisations de _mapboxMap après sa libération. Comparez le moment du logout, de la libération du widget et des opérations sur la carte ; le travail est terminé lorsque l’exception signalée "MapboxMap was used after being disposed" ne se produit plus.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
dart, flutter
Domaine
mobile
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.