Trying to find out the current location of the device, it is showing "MissingPluginException"
2,198
Is your project running on Android X? Try doing so.
Here is another helpful link: https://github.com/flutter/flutter/issues/14137
Author by
STBox
Updated on December 20, 2022Comments
-
STBox over 1 year
I have a simple piece of code, main.dart. Any kind of help would be highly appreciated. I am using
geolocator: ^5.1.3
I am simply trying to get the location of the user. But it is showing:
MissingPluginException(No implementation found for method checkPermissionStatus on channel com.baseflow.flutter/location_permissions)
A non-null String must be provided to a Text widget. 'package:flutter/src/widgets/text.dart': Failed assertion: line 285 pos 10: 'data != null'
I have added these lines to my AndroidManifest as well:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
My main.dart code is:
import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:geolocator/geolocator.dart'; void main() => runApp(MyApp()); class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( title: 'Flutter Demo', theme: ThemeData( primarySwatch: Colors.blue, ), home: HomePage(), ); } } class HomePage extends StatefulWidget { @override _HomePageState createState() => _HomePageState(); } class _HomePageState extends State<HomePage> { final Geolocator geolocator = Geolocator()..forceAndroidLocationManager; Position _currentPosition; String _currentAddress; @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text("Location"), ), body: Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: <Widget>[ if (_currentPosition != null) Text(_currentAddress), FlatButton( child: Text("Get location"), onPressed: () { _getCurrentLocation(); }, ), ], ), ), ); } _getCurrentLocation() { geolocator .getCurrentPosition(desiredAccuracy: LocationAccuracy.best) .then((Position position) { setState(() { _currentPosition = position; }); _getAddressFromLatLng(); }).catchError((e) { print(e); }); } _getAddressFromLatLng() async { try { List<Placemark> p = await geolocator.placemarkFromCoordinates( _currentPosition.latitude, _currentPosition.longitude); Placemark place = p[0]; setState(() { _currentAddress = "${place.locality}, ${place.postalCode}, ${place.country}"; }); } catch (e) { print(e); } } }
-
Code Poet almost 4 yearsDid you run Flutter Clean?
-