addListener method
void
addListener({
- FlAMapLocationChanged? onLocationChanged,
- FlAMapLocationFailed? onLocationFailed,
- FlAMapLocationHeadingChanged? onHeadingChanged,
- FlAMapLocationAuthorizationChanged? onAuthorizationChanged,
添加回调监听
Implementation
void addListener({
/// android & ios
/// 连续定位回调
FlAMapLocationChanged? onLocationChanged,
/// 仅在ios中生效
/// ios连续定位 错误监听
FlAMapLocationFailed? onLocationFailed,
/// 仅在ios中生效
/// 监听设备朝向变化
FlAMapLocationHeadingChanged? onHeadingChanged,
/// 仅在ios中生效
/// 监听权限状态变化
FlAMapLocationAuthorizationChanged? onAuthorizationChanged,
}) {
_channel.setMethodCallHandler((MethodCall call) async {
final args = call.arguments;
switch (call.method) {
case 'onAuthorizationChanged':
onAuthorizationChanged?.call(args is int ? args : null);
break;
case 'onHeadingChanged':
onHeadingChanged
?.call(args is Map ? AMapLocationHeading.fromMap(args) : null);
break;
case 'onLocationFailed':
onLocationFailed
?.call(args is Map ? AMapLocationError.fromMap(args) : null);
break;
case 'onLocationChanged':
onLocationChanged
?.call(args is Map ? AMapLocation.mapToLocation(args) : null);
break;
}
});
}