반응형
//Flutter
//main.dart
import 'package:geolocator/geolocator.dart';
import 'package:permission_handler/permission_handler.dart';
void main() async{
WidgetsFlutterBinding.ensureInitialized();
await _handleLocationPermission(); // 어플 켜지면 바로 실행
}
Future<void> _handleLocationPermission() async {
var status = await Permission.location.status;
if (!status.isGranted) {
status = await Permission.location.request();
}
if (status.isGranted) {
print('위치 권한이 허용되었습니다.');
} else if (status.isDenied) {
print('위치 권한이 거부되었습니다.');
} else if (status.isPermanentlyDenied) {
openAppSettings();
}
}
//home_screen.dart (webview영역
LocationPermission permission = await Geolocator.checkPermission();
if (permission == LocationPermission.denied) {
permission = await Geolocator.requestPermission();
}
Position position = await Geolocator.getCurrentPosition(
desiredAccuracy: LocationAccuracy.high);
var data = {
'lat': position.latitude.toString(),
'lon': position.longitude.toString(),
}
print(data);
var response = await http.post(
Uri.parse(springBootApiUrl), //SpringBoot PostMapping uri 포함해서 보내면됌
headers: <String, String>{
'Content-Type': 'application/json; charset=UTF-8',
},
body: jsonEncode(datas),
);
반응형
'공부 > App' 카테고리의 다른 글
[Flutter] 스플래시 스크린 설정 (2) | 2024.09.24 |
---|---|
[Flutter] 앱 아이콘 변경 (0) | 2024.09.24 |
[Flutter] 앱 이름 변경 (안드로이드) (0) | 2024.09.24 |
[FLUTTER] SpringBoot gps정보 전송 (0) | 2024.09.20 |
안드로이드 웹뷰 적용 (0) | 2024.07.28 |