我已经将谷歌 map 添加到我的Ffltter应用程序中,我正试图将其初始化到我当前的位置.当我打开 map 页面时,当前位置是加利福尼亚州的山景城,但我住在佛罗里达州.
为什么会发生这种事?
以下是我正在使用的代码,除了当前位置外,它可以正常工作:
import 'dart:async';
import 'package:google_maps_flutter/google_maps_flutter.dart';
import 'package:geolocator/geolocator.dart';
import 'package:flutter/material.dart';
class MapPropertySearchResults extends StatefulWidget {
const MapPropertySearchResults({super.key});
@override
State<MapPropertySearchResults> createState() =>
_MapPropertySearchResultsState();
}
class _MapPropertySearchResultsState extends State<MapPropertySearchResults> {
late GoogleMapController mapController;
late LatLng _currentPosition;
bool _isLoading = true;
@override
void initState() {
super.initState();
getLocation();
}
getLocation() async {
LocationPermission permission;
permission = await Geolocator.requestPermission();
Position position = await Geolocator.getCurrentPosition(
desiredAccuracy: LocationAccuracy.high);
double lat = position.latitude;
double long = position.longitude;
LatLng location = LatLng(lat, long);
setState(() {
_currentPosition = location;
_isLoading = false;
});
}
void _onMapCreated(GoogleMapController controller) {
mapController = controller;
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: const Text('Map'),
),
body: _isLoading ?
const Center(child:CircularProgressIndicator()) :
GoogleMap(
onMapCreated: _onMapCreated,
initialCameraPosition: CameraPosition(
target: _currentPosition,
zoom: 16.0,
),
),
);
}
}
这可能是我电脑上的设置吗? 谢谢