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

相关推荐
handsome09165 小时前
uniapp打包的app,报This app was built with the iOS 18.1 SDK解决方案
ios·uni-app
初级代码游戏8 小时前
iOS开发 SwiftUI 15:手势 拖动 缩放 旋转
ios·swiftui·swift
2601_9491465310 小时前
APP语音通知接口集成实战:移动端应用接入语音提醒API的开发手册
macos·objective-c·cocoa
森之鸟11 小时前
iOS云打包之Shorebird
ios
GuokLiu11 小时前
260203-OpenWebUI-在Windows上和RHEL上部署Caddy的步骤+在iPhone上操作的步骤
windows·ios·iphone
小鹿软件办公12 小时前
Apple 发布 macOS 11、watchOS 10 和 watchOS 9 更新
macos·objective-c·cocoa
2501_915921431 天前
傻瓜式 HTTPS 抓包,简单抓取iOS设备数据
android·网络协议·ios·小程序·https·uni-app·iphone
恋猫de小郭1 天前
Flutter 在 Android 出现随机字体裁剪?其实是图层合并时的边界计算问题
android·flutter·ios
2501_915918411 天前
把 iOS 性能监控融入日常开发与测试流程的做法
android·ios·小程序·https·uni-app·iphone·webview
Digitally1 天前
如何轻松地将大型音频文件从 iPhone 发送到不同的设备
ios·iphone