2

When I execute, (click on the "show Longitude and Latitude" button) I have two problems, a wrong position and an error:

**W/GooglePlayServicesUtil( 5181): com.example.geolocalisation_youtube requires the Google Play Store, but it is missing.
I/flutter ( 5181): 10681894.898369517
I/flutter ( 5181): long c.longitude 
I/flutter ( 5181): 37.421998333333335
E/flutter ( 5181): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: PlatformException(IO_ERROR, A network error occurred trying to lookup the supplied coordinates (latitude: 37.421998, longitude: -122.084000)., null, null)
E/flutter ( 5181): #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:653:7)
E/flutter ( 5181): #1      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:296:18)
E/flutter ( 5181): <asynchronous suspension>
E/flutter ( 5181): #2      MethodChannelGeocoding.placemarkFromCoordinates (package:geocoding_platform_interface/src/implementations/method_channel_geocoding.dart:56:24)
E/flutter ( 5181): <asynchronous suspension>
E/flutter ( 5181): #3      _MyHomePageState.build.<anonymous closure> (package:geolocalisation_youtube/main.dart:84:47)
E/flutter ( 5181): <asynchronous suspension>
**

Here’s the code:

import 'package:flutter/material.dart';
import 'package:geolocator/geolocator.dart';
import 'package:awesome_dialog/awesome_dialog.dart';
import 'package:geocoding/geocoding.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({super.key, required this.title});

  final String title;
  @override
  State<MyHomePage> createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {

  Future getPosition() async{
    bool service= await Geolocator.isLocationServiceEnabled();
    LocationPermission per= await Geolocator.checkPermission();
    if (per==LocationPermission.denied){
      per= await Geolocator.requestPermission();
      if(per!=LocationPermission.denied){
      }
    }
    print(service);
    print("---------------");
    print(per);
    print("---------------");
    if(!service ){
      AwesomeDialog(
          context: context,
          title: "services",
          body:
          Text("service is enabled")
      )..show();
    }
  }
  Future <Position> getLatandLong() async{
    return await Geolocator.getCurrentPosition().then((value) => value);
  }
  @override
  void initState(){
    getPosition();
    super.initState();
  }
  @override
  Widget build(BuildContext context) {

    return Scaffold(
      appBar: AppBar(

        title: Text(widget.title),
      ),
      body: Column(
        children: [
          Container(

            height: 500,
            width:400 ,
          ),
          ElevatedButton(
              onPressed: () async{
                 var c = await getLatandLong();
                 var distance= await Geolocator.distanceBetween(c.latitude, c.longitude, 28.033886, 1.659626);
                 print(distance);
                 print("long c.longitude ");
                 print(c.latitude);
                 List<Placemark> placemarks = await placemarkFromCoordinates(c.latitude, c.longitude);
                 print(placemarks[0].administrativeArea);

              },
              child: Text(" show Longitude and Latitude"))
        ],
      ),
    );
  }
}

I got this error on the latest version of Android Studio.

Andrej
  • 2,743
  • 2
  • 11
  • 28

0 Answers0