请参考Flutter官方网站或者Flutter中文网。
1、推荐使用Android Studio直接创建Flutter Project。
2、推荐使用Visual Studio Code作为Flutter工程主要开发和调试工具,涉及到Native代码的调试和改动,请分别使用Android Studio和XCode做双端调试。
目前百度鹰眼Flutter插件(flutter_baidu_yingyan_trace)已发布到Flutter Pub仓库。
需要在您Flutter项目中的yaml文件里配置对百度鹰眼Flutter插件包的依赖,才可使用,具体如下:
1、添加依赖:
dependencies:flutter_baidu_yingyan_trace: ^2.2.0
2、Flutter 依赖拉取
需要在当前项目位置的Terminal(终端)里使用flutter pub get拉取依赖项目,才能正常进行开发和编译。
1、Android工程配置:
1)、Flutter SDK路径配置
需要在Android工程的local.properties里配置
flutter.sdk="本地Flutter SDK目录"
2)、工程配置
打开flutter工程下的Android module工程:
在AndroidManifest.xml文件中声明该Service:
<serviceandroid:name="com.baidu.trace.LBSTraceService"android:enabled="true"android:process=":remote"></service>
在AndroidManifest.xml文件中声明使用权限:
<!-- 以下是鹰眼SDK基础权限 --><!-- 这个权限用于进行网络定位--><uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission><!-- 这个权限用于访问GPS定位--><uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission><!-- 用于访问wifi网络信息,wifi信息会用于进行网络定位--><uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission><!-- 获取运营商信息,用于支持提供运营商信息相关的接口--><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission><!-- 这个权限用于获取wifi的获取权限,wifi信息会用来进行网络定位--><uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission><!-- 写入扩展存储,向扩展卡写入数据,用于写入对象存储BOS数据--><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission><!-- 访问网络,网络定位需要上网--><uses-permission android:name="android.permission.INTERNET"></uses-permission><!-- Android O之后开启前台服务需要申请该权限 --><uses-permission android:name="android.permission.FOREGROUND_SERVICE" /><!-- Android Q之后,后台定位需要申请该权限 --><uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" /><!-- 以下不是鹰眼SDK需要的基础权限,可选 --><!-- 用于加快GPS首次定位,可选权限,非必须--><uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"></uses-permission><!-- 用于Android M及以上系统,申请加入忽略电池优化白名单,可选权限,非必须--><uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS"></uses-permission>
在main.dart的main函数中添加如下代码:
// 设置鹰眼SDK的基础信息// 每次调用startService开启轨迹服务之前,可以重新设置这些信息。if (Platform.isIOS) {/// iOS端初始化鹰眼sdk发起鉴权 since 2.2.0bool suc = await TraceSDK.setApiKey("请输入您的AK");if (suc) {// print("ios-鹰眼启动引擎成功");}/// 鹰眼配置ServiceOption serviceOption = ServiceOption(ak: "请输入您的AK",mcode: "请输入您的Bundle Identifier",serviceId: "请输入您的鹰眼服务对应的ID",keepAlive: false,);/// 设置SDK运行所需的基础信息,调用任何方法之前都需要先调用此方法/// true代表设置成功,false代表设置失败/// ios 独有bool flag =await TraceController.shareInstance.configServerInfo(serviceOption);print('--百度鹰眼服务配置 flag = $flag');/// 百度地图sdk初始化鉴权BMFMapSDK.setApiKeyAndCoordType("请输入您的AK", BMF_COORD_TYPE.BD09LL);} else if (Platform.isAndroid) {/// Android 目前不支持接口设置Apikey,/// 请在主工程的Manifest文件里设置,详细配置方法请参考官网(https://lbsyun.baidu.com/)demoBMFMapSDK.setCoordType(BMF_COORD_TYPE.BD09LL);}
Android平台需要在AndroidManifest.xml文件里设置AK:
<application><meta-dataandroid:name="com.baidu.lbsapi.API_KEY"android:value="请输入百度开放平台申请的Android端API KEY" /></application>
若您还不曾申请开发密钥,点此申请。
上一篇
下一篇
本篇文章对您是否有帮助?