iOS ------ 调用高德地图SDK

一,导入第三方库

这里使用CocoaPods安装SDK,方法和前面导入第三方库相同

1.打开终端,cd 文件路径 进入到所创建的项目文件中

2.输入pod init为该项目创建Podfile文件

3.编辑 Podfile 文件

Podfile文件内容如下:

objectivec 复制代码
platform :ios, '7.0' #手机的系统
target 'YourProjectTarget' do
pod 'AMap3DMap'  #3D地图SDK
#pod 'AMap2DMap' #2D地图SDK (2D和3D不能同时使用)
pod 'AMapSearch' #搜索功能
end

4.输入pod install下载SDK(若下载的SDK不是最新版可输入pod repo update进行更新)

二,获取高德Key

请前往高德开放平台控制台申请 iOS Key。

三,配置高德Key至AppDelegate.m文件

将上面步骤获取的高德Key,配置到代码中,以保证地图功能的正常运行。代码如下:

objectivec 复制代码
#import "AppDelegate.h"
#import <AMapFoundationKit/AMapFoundationKit.h>
@interface AppDelegate ()

@end

@implementation AppDelegate


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.
    [AMapServices sharedServices].apiKey = @"Your Key";
    return YES;
}

四,加载地图

在ViewController.m文件相应的方法中进行地图初始化,初始化的步骤:

1.import MAMapKit.h 头文件;

2.构造MAMapView对象;

3.将MAMapView添加到Subview中。

对于3D矢量地图,在 viewDidLoad 方法中添加代码:

objectivec 复制代码
#import "ViewController.h"
#import <MAMapKit/MAMapKit.h>
@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    //初始化地图
    MAMapView* mapView = [[MAMapView alloc] initWithFrame:self.view.bounds];
    //mapView.showsIndoorMap  = YES;
    //mapView.zoomLevel = 18;
    //mapView.zoomEnabled = YES;
    //mapView.rotateEnabled = NO;
    //mapView.showsUserLocation  = YES;
    //mapView.userTrackingMode = MAUserTrackingModeFollow;
    //将地图添加至View
    [self.view addSubview:mapView];
    // Do any additional setup after loading the view.
}


@end

具体效果:

其他具体操作参考iOS地图SDK

相关推荐
I烟雨云渊T1 小时前
iOS 门店营收表格功能的实现
ios
weixin_387545641 小时前
如何把 Mac Finder 用得更顺手?——高效文件管理定制指南
macos
itme2685 小时前
解决cocos 2dx/creator2.4在ios18下openURL无法调用的问题
macos·objective-c·cocoa
明月看潮生7 小时前
青少年编程与数学 01-011 系统软件简介 07 iOS操作系统
ios·青少年编程·操作系统·系统软件
90后的晨仔9 小时前
RxSwift 框架解析
前端·ios
qq_2794561511 小时前
CADisplayLink、NSTimer、GCD定时器
macos·objective-c·cocoa
可爱小仙子13 小时前
ios苹果系统,js 滑动屏幕、锚定无效
前端·javascript·ios
未来猫咪花14 小时前
# Flutter状态管理对比:view_model vs Riverpod
flutter·ios·android studio
RR133515 小时前
macOS 升级 bash 到最新版本
macos
我在北京coding15 小时前
Tableau for mac 驱动
macos