更新时间:2022年03月25日
定位Flutter插件升级3.0.0注意事项
从定位Flutter插件3.0.0版本起增加隐私合规接口,开发者需要调用接口通知百度定位SDK用户是否已经同意隐私政策。隐私政策官网链接:https://lbsyun.baidu.com/index.php?title=openprivacy 。
// 设置是否同意隐私政策 // 隐私政策官网链接:https://lbsyun.baidu.com/index.php?title=openprivacy // 未同意隐私政策之前无法使用定位及地理围栏等功能。 Future<bool> setAgreePrivacy(bool isAgree) async { return BMFLocationDispatcherFactory.instance.authDispatcher.setAgreePrivacy(_channel, isAgree); }
2、import修改
将原来的包名全部引入到了bdmap_location_flutter_plugin.dart下
将原来的包名全部引入到了bdmap_location_flutter_plugin.dart下
import 'package:flutter_bmflocation/bdmap_location_flutter_plugin.dart';3、接口修改:
1)设置AK(仅支持iOS)
@Deprecated('已废弃since3.0.0,推荐使用 `authAK()`') static Future<bool> setApiKey(String key)2)定位结果回调
@Deprecated('已废弃since3.0.0,推荐使用 `seriesLocationCallback()`') void onResultCallback({required BMFLocationResultCallback callback})4、参数修改:
新增BaiduPoiList类,将原来的poiList字符串修改为BaiduPoiList类型的List;
@Deprecated('已废弃since3.0.0,推荐使用 `pois`') String? poiList;
新增BMFLocationBaseOption类,统一两端坐标系;
@Deprecated('已废弃since3.0.0,推荐使用 `coordType`') String? coorType;
5、常见问题:
1)iOS权限问题可参照iOS定位SDK手动部署说明。
2)iOS头文件错误:
解决办法:Xcode-TARGETS-build settings-Allow Non-modular Includes In Famework Modules设置为YES。
3)鉴权或定位错误码可参照iOS错误返回码和 Android错误返回码。