热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

高德IOS真机调试LMAMapKit出错问题的解决方法(directorynotfoundforoption)

1最近项目到了收尾阶段,所以开始了在真机部署调试,之前的模拟器环境下测试项目,一切都没问题,今天真机调试过程中,


1最近项目到了收尾阶段,所以开始了在真机部署调试,之前的模拟器环境下测试项目,一切都没问题,今天真机调试过程中,不料遇到了一些错误,主要错误如下图所示:



主要错误来源提示好像是系统无法找到一个库文件,名称为:LMAMapKit。


2可是我们明明按照官方网站的教程,一步一步导入各种库文件,并且成功在模拟器部署与运行,为什么到真机上就不对了呢?回头查找项目下lib文件夹:


原来libMAMapKit.a文件在这个位置,两个文件夹各有一个。看名称应该能晓得,第一个Debug-iphonesimulator应该是模拟器运行时所调用到的库。莫非下面的那个就是真机时调用的?是否是我们少设置了引用位置的设置?


3,不管了,不知道是否是因为高端官方的失误,导致这样的结果,群里好多做地图应用的朋友都遇到过这种问题,并且使用百度Map API的朋友告诉我,百度的libMAMapKit.a是有两个,一个是模拟器用的,一个是真机调试时用的,如果到了真机调试时,需要把其真机调试的libMAMapKit.a放到项目的frameworks下,这样运行就不会报错。


4,好的,我们就沿用这个原理,手动给它添加一个libMAMapKit.a到frameworks下。

4-1把官方demo或自己项目lib-Release-iphoneos下的libMAMapKit.a拷贝一份



4-2粘贴到项目的frameworks下。




4-3,粘贴后,项目整体结构;:




虽然看似重复了,可是这种土方法还是很灵验的哦




5,大功告成,保存一下,这个时候,你再真机调试一下,运行就应该是sussessd吧?







6,总体总结: 根据我个人感觉,总体出的问题就在于当在模拟器环境下运行时,会调用lib下Debug-iphonesimulator下的libMAMapKit.a,但是我们转到真机环境下时,系统无法找到lib下Release-iphoneos下的libMAMapKit.a,所以我们手动的copy一份到了framework下,这样部署运行时,就可以找到此库文件了。





还有,目前我使用的高德ios API版本叫旧,一直没有更换新的api,大家也可以尝试一下下载最新的API看看还有没有此问题。














------------------------------------------------------------------分割线------------------------------------------------------------------------------------------------













解决方法二:官方给出的方法







看自己的出错日志,肯定会有如上的话:意为没有发现此路径下的Debug-ophonesos目录,所以我们就需要手动创建一个。




       1,到工程的lib目录下,新建个Debug-iphoneos目录,然后把release-iphoneos目录下的.a文件拷贝到刚才新建的Debug-iphoneos目录下(Debug-iphonesimulator别动,要不可能会影响你模拟器调试)。

再编译运行,你会发现没有错误了。

添加后的项目列表如下截图所示:




保存,编译,运行,如果还出错的话,请注意了:







我们模拟器就用Debug来调试,真机调试时,也用Debug,如果按照要求,创建了Debug-iphoneos文件夹和内容,是不会有错的,或许你真机调试时,用的时Release,接下来打开Device edit界面设置一下:






在这里面设置一下,还有在项目的Code sigin identity 里确保设置的是真机调试的证书~~~




真机运行 要选择 release 模式  高德的 debug模式下 他的包里没有 armv7  
路径一定要正确  debug 对应debug路径
release 要对应 release模式





如果到这里,还不行的话,打客服电话吧。


































20130109更新

加载mapview时控制台出现很多ImageIO:警告,如:










这个不用怕,是我们安装官方教程导入地图库等资源时有一步骤有错误,修改后就不会出现此问题了。

解决方案:

把assets目录在Xcode环境下删除,然后再去工程文件夹下看一看有没有此文件夹,有的话一同删除了。

重新添加assets文件包




在添加 assets 文件包时  选择 Create folder references for any added folders选项








看到了吗?当时你添加assets文件时,肯定选中的是第一项,Create groups for any added folders

说到这里,我就介绍一下这俩选项的区别。




在copy items into destination group·s folder 的基础上(这个是copy目标文件到当前工程里,不勾选的话,只是引用关系,相当于副本)




Create groups for any added folders 意思是指为添加的文件创建group组(文件夹),在finder里打开工程文件就会有你创建的这个文件夹,










Create folder references for any added folders 意思是指为添加的文件创建虚拟的group组(文件夹),只在Xcode环境下才会显示。







选中第二项references 导入assets 后,保存再运行,就没有imageIO错误了。








































项目涉及Map或是LBS定位服务的朋友可以加我一下噢~,我主要是做这方面的开发,希望一起交流学习。

QQ:315481491 


推荐阅读
  • MapKit 使用介绍:大头针和图形渲染
    作者:PRANJALSATIJA,原文链接,原文日期:2016-11-13译者:TonyHan; ... [详细]
  • 在 Linux 环境下,多线程编程是实现高效并发处理的重要技术。本文通过具体的实战案例,详细分析了多线程编程的关键技术和常见问题。文章首先介绍了多线程的基本概念和创建方法,然后通过实例代码展示了如何使用 pthreads 库进行线程同步和通信。此外,还探讨了多线程程序中的性能优化技巧和调试方法,为开发者提供了宝贵的实践经验。 ... [详细]
  • 在iOS6之后,不再使用谷歌地图了,而是使用苹果自己的地图,但是API编程接口没有太大的变化。开发人员不需要再学习很多新东西就能开发地图应用,这是负责任的做法。因此本节介绍的内容也同样适用于iOS5 ... [详细]
  • 本文详细介绍了批处理技术的基本概念及其在实际应用中的重要性。首先,对简单的批处理内部命令进行了概述,重点讲解了Echo命令的功能,包括如何打开或关闭回显功能以及显示消息。如果没有指定任何参数,Echo命令会显示当前的回显设置。此外,文章还探讨了批处理技术在自动化任务执行、系统管理等领域的广泛应用,为读者提供了丰富的实践案例和技术指导。 ... [详细]
  • 在当前的软件开发领域,Lua 作为一种轻量级脚本语言,在 .NET 生态系统中的应用逐渐受到关注。本文探讨了 Lua 在 .NET 环境下的集成方法及其面临的挑战,包括性能优化、互操作性和生态支持等方面。尽管存在一定的技术障碍,但通过不断的学习和实践,开发者能够克服这些困难,拓展 Lua 在 .NET 中的应用场景。 ... [详细]
  • 在iOS平台上,应用的流畅操作体验一直备受赞誉。然而,过去开发者往往将更多精力集中在功能实现上,而对性能优化的关注相对较少。本文深入探讨了iOS应用性能优化的关键要点与实践方法,旨在帮助开发者提升应用的响应速度、降低功耗,并改善整体用户体验。通过具体案例分析和技术解析,文章提供了实用的优化策略,包括代码层面的改进、资源管理优化以及界面渲染效率的提升等。 ... [详细]
  • 【Android Lock Pattern】图案解锁(一):LockPatternView源代码
    选择Settings-Security-Setupscreenlock设置屏幕锁选择Pattern设置图案在我的真机HTCDesire(Android2.2)上,截图如下:An ... [详细]
  • 认识Cutestrap,一个轻量级CSS框架
    CutestrapisabrandnewCSSframework.ThisarticlepresentsCutestrap’sfeaturesandputstheframework ... [详细]
  • IOS9之当前位置定位
    2019独角兽企业重金招聘Python工程师标准#import*.h文件中导入以下两个框架*#import ... [详细]
  • 在Linux系统中,通过使用`read`和`write`函数可以实现文件的高效复制操作。`open`函数用于打开或创建文件,其返回值为文件描述符,成功时返回一个有效的文件描述符,失败时返回-1。`path`参数指定了要操作的文件路径,而`oflag`参数则定义了文件的打开模式和属性。此外,为了确保数据的完整性和一致性,还需要合理处理文件读取和写入过程中的错误和异常情况。 ... [详细]
  • Objective-C 中的委托模式详解与应用 ... [详细]
  • 蓝桥杯物联网基础教程:通过GPIO输入控制LED5的点亮与熄灭
    本教程详细介绍了如何利用STM32的GPIO接口通过输入信号控制LED5的点亮与熄灭。内容涵盖GPIO的基本配置、按键检测及LED驱动方法,适合具有STM32基础的读者学习和实践。 ... [详细]
  • 本文介绍了一种简化版的在线购物车系统,重点探讨了用户登录和购物流程的设计与实现。该系统通过优化界面交互和后端逻辑,提升了用户体验和操作便捷性。具体实现了用户注册、登录验证、商品浏览、加入购物车以及订单提交等功能,旨在为用户提供高效、流畅的购物体验。 ... [详细]
  • 在iOS开发领域,针对不同屏幕尺寸的适配一直是开发者关注的重点。本文聚焦于iPhone 6/6 Plus的适配策略,特别是通过AutoLayout技术在淘宝客户端中的实际应用案例,为开发者提供了一套系统而有效的解决方案。文章不仅详细解析了AutoLayout的工作原理,还结合具体实例,探讨了如何利用这一工具实现界面元素的灵活布局,确保应用在各种设备上都能保持良好的用户体验。这对于正面临多设备适配挑战的iOS开发者来说,无疑是一份宝贵的参考资料。 ... [详细]
  • Chapter4:菜单FileSettingsAppearanceBehavior
    本教程使用社区版IntelliJIDEA2021.1。1SettingsIDEA配置功能列表如图1.1所示。图1.1Settings功能预览由图1.1可知,配置列 ... [详细]
author-avatar
wp_725133
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有