|
|
@@ -33,13 +33,18 @@ class LocationManager: NSObject {
|
|
|
locationManager.delegate = self
|
|
|
setup()
|
|
|
}
|
|
|
+
|
|
|
+ func initChannel(withMessenger messenger: FlutterBinaryMessenger) {
|
|
|
+ locationUpdateEventChannel = FlutterEventChannel(name: MapKitConstans.locationUpdateEventChannelName, binaryMessenger: messenger)
|
|
|
+ locationUpdateEventChannel?.setStreamHandler(self)
|
|
|
+ }
|
|
|
|
|
|
func start(withMessenger messenger: FlutterBinaryMessenger) -> Bool {
|
|
|
// permission detect
|
|
|
switch CLLocationManager.authorizationStatus() {
|
|
|
case .authorizedWhenInUse, .authorizedAlways:
|
|
|
locationManager.startUpdatingLocation()
|
|
|
- setupMessenger(messenger: messenger)
|
|
|
+ //setupMessenger(messenger: messenger)
|
|
|
return true
|
|
|
case .notDetermined:
|
|
|
return false
|
|
|
@@ -53,11 +58,11 @@ class LocationManager: NSObject {
|
|
|
locationManager.stopUpdatingLocation()
|
|
|
}
|
|
|
|
|
|
- func setupMessenger(messenger: FlutterBinaryMessenger) {
|
|
|
- guard locationUpdateEventChannel == nil && locationEventSink == nil else { return }
|
|
|
- locationUpdateEventChannel = FlutterEventChannel(name: MapKitConstans.locationUpdateEventChannelName, binaryMessenger: messenger)
|
|
|
- locationUpdateEventChannel?.setStreamHandler(self)
|
|
|
- }
|
|
|
+// func setupMessenger(messenger: FlutterBinaryMessenger) {
|
|
|
+// guard locationUpdateEventChannel == nil && locationEventSink == nil else { return }
|
|
|
+// locationUpdateEventChannel = FlutterEventChannel(name: MapKitConstans.locationUpdateEventChannelName, binaryMessenger: messenger)
|
|
|
+// locationUpdateEventChannel?.setStreamHandler(self)
|
|
|
+// }
|
|
|
|
|
|
func setup() {
|
|
|
locationManager.allowsBackgroundLocationUpdates = true
|