提要:虽然百度有sdk 开发文档,有详细的说明百度地图的配置,但是对于新手开发者来说,还是有一些困难和花费一些时间,在这我就详细说明百度地图的配置,把一些特别易出错的地方 提出,以方便新手IOS开发者,少走一点弯路,这就是我的目的。不喜勿喷。
简介 :用户在使用SDK之前需要获取百度地图移动版开发密钥(Key),该key与你的百度账户相关联。您必须先有百度帐户,才能获得key。并且,该key与您引用SDK的程序包名有关,具体流程请参照申请密钥。请妥善保存Key,地图初始化时需要用到Key。
1.申请密匙 : 地址:http://lbsyun.baidu.com/apiconsole/key
2. 直接点击创建应用
首先,在你工程plist.info文件中添加一个string类型的字符串,这个字符串就是你 的应用名称,可以新建后copy到应用名称方框内以免出错。
如图过程:
然后就是安全码:
首先,安全码的命名规则是com. 开头,如果是公司项目,就是你公司网站倒过来写,如com.MyGongSi;
把Bundle Identifier 复制到安全码框里面 ,点击提交;如图
百度就给你配置了密匙。如图
密匙申请就到此结束了。
3.注意事项也就是前提配置。
百度开发文档说的很清楚,可以保证工程只有有一个.mm后缀的文件。直接手动改成mm就行 。 //还有一种办法,具体看百度文档,这种办法显然简单一些。
然后在工程属性中显式设定:在Xcode的Project -> Edit Active Target -> Buildsettings -> Linking -> Other Linker Flags中添加-ObjC
最后就是加网络请求的两个参数。
在info.plist文件中添加NSAppTransportSecurity字段,类型为Dictionary。
在NSAppTransportSecurity下添加NSAllowsArbitraryLoads字段,类型为Boolean,值为YES。
添加完成后继续添加2个sting形的参数 NSLocationWhenInUseUsageDescription
NSLocationAlwaysUsageDescription
环境配置
点击相关下载 ,解包。
导入包。 把图上7个包拖进工程记得 选中copy item.
接着引入系统库
在 TARGETS->Build Phases-> Link Binary With Libaries中点击“+”按钮,在弹出的窗口中点击“Add Other”按钮 搜索 并引入。
引入mapapi.bundle资源文件
方法 :选中工程名,在右键菜单中选择Add Files to “工程名”…,从BaiduMapAPI_Map.framework||Resources文件中选择mapapi.bundle文件,并勾选“Copy items if
needed”复选框,单击“Add”按钮,将资源文件添加到工程中。
接着代码方面:
在AppDelegate里面 注册地图管理器
#import <BaiduMapAPI_Map/BMKMapComponent.h>//引入地图功能所有的头文件
添加属性 如图
然后注册地图启动 启动BaiduMapManager
最后在要显示的Viewcontroller里面 显示地图就ok了
在 viewDidLoad 里面 生成地图
配置结束。
效果图 :
注:如有不明确 或 显示不出来,请参照百度地图api开发文档。