码迷,mamicode.com
首页 > 其他好文 > 详细

百度SDK的使用

时间:2015-06-17 00:17:55      阅读:231      评论:0      收藏:0      [点我收藏+]

标签:

参考文档:http://developer.baidu.com/map/index.php?title=iossdk/guide/attention

1.首先需要注册百度开发者,创建一个应用,得到应用的AK(key).

2.?配置开发环境:

第一步、引入BaiduMapAPI.framework

百度地图SDK提供了模拟器和真机两种环境所使用的framework,分别存放在libs/Release- iphonesimulator和libs/Release-iphoneos文件夹下,开发者可根据需要使用真机或模拟器的包,如果需同时使用真机和模 拟器的包,可以使用lipo命令将设备和模拟器framwork包中的BaiduMapAPI文件合并成一个通用的文件,命令如下:lipo -create Release-iphoneos/BaiduMapAPI.framework/BaiduMapAPI Release-iphonesimulator/BaiduMapAPI.framework/BaiduMapAPI -output Release-iphoneos/BaiduMapAPI.framework/BaiduMapAPI

此时Release-iphoneos文件夹下的BaiduMapAPI.framework即可同时用于真机和模拟器(可以使用lipo–info 命令检查framework所支持的架构)。

将所需的BaiduMapAPI.framework拷贝到工程所在文件夹下。在 TARGETS->Build Phases-> Link Binary With Libaries中点击“+”按钮,在弹出的窗口中点击“Add Other”按钮,选择BaiduMapAPI.framework文件添加到工程中。

注:静态库中采用ObjectC++实现,因此需要您保证您工程中至少有一个.mm后缀的源文件(您可以将任意一个.m后缀的文件改名 为.mm),或者在工程属性中指定编译方式,即将Xcode的Project -> Edit Active Target -> Build -> GCC4.2 - Language -> Compile Sources As设置为"Objective-C++"

第二步、引入所需的系统库

百度地图SDK中提供了定位功能和动画效果,v2.0.0版本开始使用OpenGL渲染,因此您需要在您的Xcode工程中引入 CoreLocation.framework和QuartzCore.framework、OpenGLES.framework、 SystemConfiguration.framework、CoreGraphics.framework、Security.framework。 添加方式:在Xcode的Project -> Active Target ->Build Phases ->Link Binary With Libraries,添加这几个framework即可。

第三步、环境配置

在TARGETS->Build Settings->Other Linker Flags 中添加-ObjC。

第四步、引入mapapi.bundle资源文件

如果使用了基础地图功能,需要添加该资源,否则地图不能正常显示

mapapi.bundle中存储了定位、默认大头针标注View及路线关键点的资源图片,还存储了矢量地图绘制必需的资源文件。如果您不 需要使用内置的图片显示功能,则可以删除bundle文件中的image文件夹。您也可以根据具体需求任意替换或删除该bundle中image文件夹的 图片文件。

方法:选中工程名,在右键菜单中选择Add Files to “工程名”…,从BaiduMapAPI.framework||Resources文件中选择mapapi.bundle文件,并勾选“Copy items if needed”复选框,单击“Add”按钮,将资源文件添加到工程中。

第五步、引入头文件

在使用SDK的类引入头文件:

#import <</span>BaiduMapAPI/BMapKit.h>//引入所有的头文件  #import <</span>BaiduMapAPI/BMKMapView.h>//只引入所需的单个头文件

3.在AppDelegate中创建MapManager,建立MapViewController并将其设为window的根视图控制器

技术分享

4.在MapViewController中创建BMKMapView,并使此控制器遵守代理,.这个视图就是地图视图.以下是创建过程和一些简单的功能方法

技术分享

为了节省内存,需要实现以下代理方法

技术分享

百度SDK的使用

标签:

原文地址:http://www.cnblogs.com/shadowtree/p/4582039.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!