SuperAPI AI 工具集

baidu-map-ios-sdk

编程与开发

查看项目

更新于 10-15 18:45

技能介绍

用途:在 iOS 工程中集成百度地图 BaiduMapKit、定位 BMKLocationKit 及步骑行导航 BaiduWalkNaviKit,输出可落地、可验证的地图方案。覆盖地图展示、单次/连续/后台定位、步行与骑行实时导航、POI 检索、路线规划、标注与覆盖物、逆地理、轨迹动画、点聚合与隐私弹窗等需求。

主要能力:按 reference.md 选取对应文档,结合 class-index.md 类速查、location.md 定位鉴权、navi.md 导航、overlays.md 覆盖物、route.md 路线、utils.md 几何与坐标转换等。

使用方式:未集成 SDK 时先配置 CocoaPods(编写 Podfile → pod install → 用生成的 .xcworkspace 打开),确认可正确导入头文件后再写调用代码,避免用 #if __has_include 条件编译。已集成时直接按本地 SDK 版本与头文件写代码,不写不存在的 API;若编译报符号不存在,提示更新对应 Pod 版本后重试。代码写完后需自动执行编译修复:xcodebuild -workspace xxx.xcworkspace -scheme xxx -destination 'generic/platform=iOS' build,循环「编译→修复→再编译」直至 BUILD SUCCEEDED 后停止。

必要配置:在百度 LBS 控制台申请 iOS 应用 AK,Bundle Identifier 须与工程 PRODUCT_BUNDLE_IDENTIFIER 一致,代码中注明将 YOUR_AK 替换为实际 AK;首次使用前必须弹窗获得用户同意隐私政策,地图调用 [BMKMapManager setAgreePrivacy:YES],定位经 BMKLocationAuth 的 setAgreePrivacy 后再初始化 BMKLocationManager;Info.plist 配置 CFBundleDisplayName,定位配 NSLocationWhenInUseUsageDescription;配置 LaunchScreen.storyboard 与 UILaunchStoryboardName 避免非全屏黑边。

规则与限制:地图 SDK 全局 BD09,定位 SDK 默认 GCJ02,混用须统一为 BD09(设 coordinateType 为 BMKLocationCoordinateTypeBMK09LL 或 BMKCoordTrans)。点标注优先用 BMKIconMarker/BMKTextMarker(addOverlay),禁止 BMKPointAnnotation/BMKPinAnnotationView,例外为点聚合与固定屏选点。路线与起终点优先使用纹理(BMKPolylineView.textureImage 或 BMKMultiTexturePolylineView;起终点用 assets 的 icon_start/icon_end)。路线绘制须调用 fitVisibleMapRect:edgePadding:withAnimated: 适配视野;地图 Logo 不可被遮挡,有浮动栏时用 setMapPadding 预留。驾车导航细节、服务端逻辑、非百度 SDK 不在范围内;确切API、参数与示例以本地 SDK 头文件为准。