iOS 开发-百度地图API

1.创建一个应用。

2.创建百度地图API应用http://lbsyun.baidu.com/apiconsole/key得到访问应用的AK,

应该要注意创建的时候安全码要与应用的Bundle Identifier相同,如果不同显示出来的地图只有方格。

3.下载官方的 http://developer.baidu.com/map/sdkiosdev-download.htm的iossdk静态库其中包含inc(头文件)和libs(静态库)和mapapi.bundle(图标等图片)三个文件拖入工程,选中Copy items into destination...选项。

4.Bulid Settings中搜索other linker找到other linker Flags点击添加-all_load/官方文档说要添加-ObjC,按照官方的吧。

5.搜索Library Search Paths删除所有之后添加$(SRCROOT)/libs/Release$(EFFECTIVE_PLATFORM_NAME),

要将其他选项都删除,不然会莫名的出现错误,上面的一串字母前面是工程所在的目录的宏定义,后面是模拟器和真机调试自动调用的宏定义。

6.静态库中采用ObjectC++实现,因此需要您保证您工程中至少有一个.mm后缀的源文件所以将appdelegate.m文件双击之后变为.mm文件。

7.添加CoreLocation.framework和QuartzCore.framework、OpenGLES.framework、SystemConfiguration.framework、CoreGraphics.framework、Security.framework。

8.在Prefix.pch文件中导入BMapKit.h头文件,这样所有的文件都可以调用静态库中的方法。

9.在AppDelegate.mm文件中

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

{

    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

    // Override point for customization after application launch.

    self.window.backgroundColor = [UIColor whiteColor];

    [self.window makeKeyAndVisible];

    

    _mapManager = [[BMKMapManager alloc]init];

    // 如果要关注网络及授权验证事件,请设定     generalDelegate参数

    BOOL ret = [_mapManager start:@"申请的KEY"  generalDelegate:nil];//添加KEY

    if (!ret) {

        NSLog(@"manager start failed!");

    }

    self.window.rootViewController = [[RootViewController alloc]init];

    return YES;

}

需要使用的页面


- (void)viewDidLoad

{

    [super viewDidLoad];

// Do any additional setup after loading the view.

    self.mapView = [[BMKMapView alloc]initWithFrame:CGRectMake(0, 0, 320, 480)];

    [self.view addSubview:self.mapView];

    self.mapView.rotation = 90;//旋转90

    self.mapView.overlooking = -30;//30度俯瞰

    [self.mapView setMapType:BMKMapTypeTrafficOn];//设置地图类型为实时路况

 

}

-(void)viewWillAppear:(BOOL)animated

{

    [self.mapView viewWillAppear];

    self.mapView.delegate = self; // 此处记得不用的时候需要置nil,否则影响内存的释放

}

-(void)viewWillDisappear:(BOOL)animated

{

    [self.mapView viewWillDisappear];

    self.mapView.delegate = nil; // 不用时,置nil

}





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值