基于Swift利用百度lbs定位iOS SDK开发遇到的问题汇总
在使用Swift语言,利用百度地图开放平台的iOS定位SDK进行开发时,可能会遇到一些小问题。基于一些笔者在开发过程遇到的问题,本文对问题进行了总结,并且给出了相应的解决方案供各位入门的开发者参考。
概述
笔者为iOS开发小白,近期尝试利用Swift语言,主要参考百度地图开放平台的iOS定位SDK开发文档进行定位功能的APP开发。开发指南主要是对Objective-C语言的开发方法进行的讲解,但是未对Swift语言开发进行细节描述。本文对开发初期遇到的自动部署和桥接文件问题进行了总结,查找资料获取其解决方案进行了记录,并对开发文档内容进行了补充。
自动部署
在进行自动部署过程中,完成创建Podfile的创建之后,根据开发文档,编辑Podfile内容如:
platform :ios, '7.0'
target 'mytestLocPodApp' do #工程名字pod 'BMKLocationKit'
end
对于上述内容,有两个地方需要根据实际的情况进行修改。首先,将1行platform后的’7.0’改为目前创建应用的iOS平台版本,如最新的’13.2’。其次,将第2行target后的’mytestLocPodApp’更改为自己项目的饿名称,如’swiftLocTest’。按照这样描述的情况,得到的Podfile内容为:
platform :ios, '13.2'
target 'swiftLocTest' do #工程名字pod 'BMKLocationKit'
end
此后再进行接下来的pop install操作。
直接在控制台执行pop install,出现了如下图所示的报错。
查找相关资料,发现其解决方案,即在控制台输入
pod repo remove trunk
然后重新执行
pod install
即可成功实现自动部署,完成自动部署的正确结果如下图所示。
桥接文件配置
如果需要利用Swift通过百度地图定位iOS SDK进行开发,需要对桥接文件进行配置。
在完成上述自动部署之后,可以看到文件工程所在目录中出现了一个后缀名为.xcworkspace的文件。双击这一文件,以打开包含有SDK内容的完整工程。接下来,需要在工程中创建一个桥接文件。
在XCode的菜单栏中,打开File->New->File…,如下图所示。
然后,在弹出的对话框中,选择Header File,并将文件名拟为BMKSwiftDemo-Bridging-Header.h。创建位置选择到和上述.xcworkspace文件同一级别的目录,Group选择到最高级别,如下图所示。
完成桥接头文件的创建后,对文件填写如下内容:
#ifndef BMKSwiftDemo_Bridging_Header_h
#define BMKSwiftDemo_Bridging_Header_h#import <BMKLocationKit/BMKLocationComponent.h>#endif /* BMKSwiftDemo_Bridging_Header_h */
即引入了BMKLocationKit下的BMKLocationComponent.h头文件。因为这一文件已经包含定位所需的其他头文件,所以仅引入这一文件即可。
随后,需要对桥接文件进行配置。在Targets->Build Settings->Swift Compiler - General中,将Objective-C Bridging Header项的值更为BMKLocationComponent.h即可完成配置,如下图所示。
接下来,可以根据开发文档的后续描述进行开发~
基于Swift利用百度lbs定位iOS SDK开发遇到的问题汇总相关推荐
- 安卓学习专栏——百度地图(1)获取SHA1指纹申请百度地图API Key使用百度LBS定位功能(图文保姆级)
步骤 系列文章 前言 1.前期准备 2.创建应用 3.获取发布版SHA1和开发版SHA1 3.1找到.android文件夹位置 3.2Android Studio的Terminal中cd路径 3.3输 ...
- 基于Android的百度地图定位开发
百度地图定位 一.注册和获取密钥 1.获取SHA1 2.获取包名 二.AS配置 三.显示地图开发 1.添加地图权限 2.添加地图容器 3.地图初始化 4.创建地图Activity,管理MapView生 ...
- 利用百度LBS做一个小Demo
为什么80%的码农都做不了架构师?>>> 申请ak(即获取密钥) http://lbsyun.baidu.com/apiconsole/key?application=key ...
- 了解Swift:15个适合iOS应用开发的初学者友好资源
现在是开始在iOS上使用Swift编程语言进行编程的好时机. 但是从哪里开始呢? 尽管有很多很棒的Swift和iOS程序员免费资源,但是并不是所有的资源都是为初学者设计的. 从Apple自己出色的指南 ...
- 百度地图定位(移动开发第四次作业)
百度地图定位APP 一.注册和获取密钥 1.注册 2.获取密钥 二.导入百度地图开发包 1.下载开发包 2.将Jar包添加至项目 三.显示地图 1. 配置AndroidManifest.xml文件 2 ...
- iOS SDK开发系列三之微信支付SDK封装Demo以及xcodebuild简单打包脚本实现
前言 SDK开发系列文章一 SDK开发系列文章二 之前两个文章介绍了Cocoapods的原理,Xcode环境变量以及动态库和静态库的介绍,这些基本知识就单独抽出来了,方便以后翻阅.看了一遍网上的一些静 ...
- iOS SDK开发流程
文章目录 搭建工作区间 1.创建一个本地代码库文件夹 2.创建一个工作区间 3.创建一个项目 4.创建Framework制作的项目 5.添加项目到Workspace 编写和调试Framework 编写 ...
- Android利用百度地图定位
百度地图照着百度的教程做的总是出现报错 请帮我看看错误在那 2013-12-13 15:16168海军 | 分类:百度地图 | 浏览1252次 java.lang.RuntimeException: ...
- iOS SDK开发系列一之Cocoapods原理,Xcode的配置,动态库和静态库介绍
前言 三个月没写东西了,是时候总结点东西了.SDK这个东西开发其实和项目开发类似,但是项目中你不需要关注一些配置和打包的参数,或者你压根不需要关注Framework和.a到底是怎么链接配置的,因为Co ...
最新文章
- 【数据处理】python数据清洗通用手法:缺失值处理
- [python-图像处理]python图片处理技巧[基本操作]
- Eclipse和MyEclipse相关的快捷键
- Mysql添加字段.md
- 深度学习attention原理_深度学习Anchor Boxes原理与实战技术
- CentOS7下搭建yum仓库
- JAVA利用google的zxing解析二维码QRCODE
- PyTorch学习—11.权值初始化
- JS实现FlyBird
- 黑苹果开启核显加速_「黑苹果」关于双显卡正确开启核显加速
- 人人商城开启整点秒杀功能
- Linux设备驱动开发详解 第3版 (即 Linux设备驱动开发详解 基于最新的Linux 4 0内核 )前言
- 用python画小鸭_python中的鸭子类型(协议)和接口
- java sl4j 日志_java-slf4j日志文件保存在哪里?
- Python案例-网络编程-socket入门-serverclient
- 杰理之LINEIN 左右声道与 DACLR 输入出的注意【篇】
- 宏观与微观的一秒改变
- 网课频遭吐槽?数据背后隐藏这些真相
- 依赖:类之间的依赖关系【python】
- tensorflow实现自编码网络
热门文章
- 简易烟雾监测系统搭建(一) 烟雾传感原理篇
- 毕业论文 | 基于51单片机的自动报警设计(烟雾报警)
- 揭秘4G拨号背后的“秘密”
- 计算机网络在广播电视工程中的应用,论广播电视工程中计算机技术的应用
- Introduce·哲学核心期刊推荐《文史哲》
- UGUI DrawCall的优化 工作记录
- NPP VIIRS卫星数据介绍
- android录制mp3 github,GitHub - duantao561/AndroidMP3Recorder-1: 为Android提供MP3录音功能[RETIRED]...
- 使用SMART原则来明晰你的目标
- 音乐创作软件Studio One 4.5.1