5/2/pass3

This commit is contained in:
Hamza-Ayed
2024-05-02 12:52:04 +03:00
parent a6d93a935c
commit dd4e3a2e20
3 changed files with 91 additions and 83 deletions

View File

@@ -1,67 +1,67 @@
import 'dart:async';
import 'package:background_location/background_location.dart';
import 'package:get/get.dart';
import 'package:permission_handler/permission_handler.dart';
// import 'dart:async';
// import 'package:background_location/background_location.dart';
// import 'package:get/get.dart';
// import 'package:permission_handler/permission_handler.dart';
class LocationBackgroundController extends GetxController {
@override
void onInit() {
super.onInit();
requestLocationPermission();
configureBackgroundLocation();
}
// class LocationBackgroundController extends GetxController {
// @override
// void onInit() {
// super.onInit();
// requestLocationPermission();
// configureBackgroundLocation();
// }
Future<void> requestLocationPermission() async {
var status = await Permission.locationAlways.status;
if (!status.isGranted) {
await Permission.locationAlways.request();
}
}
// Future<void> requestLocationPermission() async {
// var status = await Permission.locationAlways.status;
// if (!status.isGranted) {
// await Permission.locationAlways.request();
// }
// }
Future<void> configureBackgroundLocation() async {
await BackgroundLocation.setAndroidNotification(
title: "Background Location",
message: "Tracking location...",
icon: "@mipmap/ic_launcher",
);
// Future<void> configureBackgroundLocation() async {
// await BackgroundLocation.setAndroidNotification(
// title: "Background Location",
// message: "Tracking location...",
// icon: "@mipmap/ic_launcher",
// );
BackgroundLocation.setAndroidConfiguration(1000);
BackgroundLocation.startLocationService();
BackgroundLocation.getLocationUpdates((location) {
// Handle location updates here
print("New location: ${location.latitude}, ${location.longitude}");
});
}
// BackgroundLocation.setAndroidConfiguration(1000);
// BackgroundLocation.startLocationService();
// BackgroundLocation.getLocationUpdates((location) {
// // Handle location updates here
// print("New location: ${location.latitude}, ${location.longitude}");
// });
// }
startBackLocation() async {
Timer.periodic(const Duration(seconds: 5), (timer) {
getBackgroundLocation();
});
}
// startBackLocation() async {
// Timer.periodic(const Duration(seconds: 5), (timer) {
// getBackgroundLocation();
// });
// }
getBackgroundLocation() async {
var status = await Permission.locationAlways.status;
if (status.isGranted) {
await BackgroundLocation.startLocationService(
distanceFilter: 20, forceAndroidLocationManager: true);
BackgroundLocation.setAndroidConfiguration(
Duration.microsecondsPerSecond); // Set interval to 5 seconds
// getBackgroundLocation() async {
// var status = await Permission.locationAlways.status;
// if (status.isGranted) {
// await BackgroundLocation.startLocationService(
// distanceFilter: 20, forceAndroidLocationManager: true);
// BackgroundLocation.setAndroidConfiguration(
// Duration.microsecondsPerSecond); // Set interval to 5 seconds
BackgroundLocation.getLocationUpdates((location1) {
print('''\n
Latitude: ${location1.latitude.toString()}
Longitude: ${location1.longitude.toString()}
Altitude: ${location1.altitude.toString()}
Accuracy: ${location1.accuracy.toString()}
Bearing: ${location1.bearing.toString()}
Speed: ${location1.speed.toString()}
// BackgroundLocation.getLocationUpdates((location1) {
// print('''\n
// Latitude: ${location1.latitude.toString()}
// Longitude: ${location1.longitude.toString()}
// Altitude: ${location1.altitude.toString()}
// Accuracy: ${location1.accuracy.toString()}
// Bearing: ${location1.bearing.toString()}
// Speed: ${location1.speed.toString()}
''');
});
} else {
await Permission.locationAlways.request();
print('Location permission not granted');
}
}
}
// ''');
// });
// } else {
// await Permission.locationAlways.request();
// print('Location permission not granted');
// }
// }
// }