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

IOS真机dyld:Librarynotloaded错误Crash

dyld:Librarynotloaded刚刚开始看IOS,编译项目,模拟器OK,真机archive打包crash.搜索了众多解决方案&

dyld: Library not loaded

刚刚开始看IOS,编译项目,模拟器OK,真机 archive打包 crash.搜索了众多解决方案,百度上的太坑了,找不到适合我的,像说什么把 Targets -> Build Phases ->Link Binary With Libraries 中相应.framework 的status 改为 Optional的,我对IOS不熟都觉得不对,这样虽然可以运行,但是你用到lib方法时是找不到lib的,肯定不能这样解决。

先是参考 iOS崩溃捕捉和分析 这篇文章通过xcode : Window ->Devices and Simulators -> Devices 连接真机查看crash文件:

Termination Description: DYLD, Library not loaded: @rpath/xxxxxxxx.framework/xxxxxxxx | Referenced from: /var/containers/Bundle/Application/5C7D2BEE-AC49-45C0-87F0-5728D77B4812/aaaaa.app/aaaaa | Reason: no suitable image found. Did find: | /private/var/containers/Bundle/Application/5C7D2BEE-AC49-45C0-87F0-5728D77B4812/aaaaa.app/Frameworks/xxxxxxx.framework/xxxxxxx: code signing blocked mmap() of ‘/private/var/containers/Bundle/Application/5C7D2BEE-AC49-45C0-87F0-5728D77B4812/aaaaa.app/Frameworks/xxxxxxxxxx.framework/xxxxxxxxx’


我遇到的问题的解决方案是,将keychain 中证书的完全信任修改为 系统默认.

我的应该是一个比较小众的问题。
也就是这个答案帮助了我 https://stackoverflow.com/a/30252254

当然,出现这个问题的原因应该是很多的,虽然我没有遇到,但是稍微总结写别人给出的解决方案:

  1. Clean .(有些情况clean一下就解决了。https://stackoverflow.com/a/34542847)
  2. Targets ->Build Settings ->Build Options ->Embedded Content Contains Swift Code(我的最新版XCode是Always Embed Swifte Standard Libraries) 设置成Yes.(https://stackoverflow.com/a/26949219)
  3. Targets ->Build Settings ->Linking ->Runpath Search Path 设置成@executable_path/Frameworks (https://stackoverflow.com/a/27433337)
  4. Targets ->Genral ->Embedded binaries 将你的.framework添加进去(https://stackoverflow.com/a/24345546)
  5. https://stackoverflow.com/a/43197278在我的测试中,这个答案虽然能运行程序,但访问不到Optional 的.framework.我觉得是一个错误答案。
  6. https://stackoverflow.com/a/27326230 这个答案是说证书有问题,重新生成证书(我差点要尝试这个方案了,不过还好通过修改证书 ->信任 解决了,虽然我不清楚原因,有知道的,请留言解释下哦)

如果以上都不能解决你的问题,那你还是在https://stackoverflow.com/search?q=dyld+library+not+loaded 这里自己找找吧。
转载地址


推荐阅读
  • 项目地址:github.comDanie1sDNS…DNSPageViewDNSPageView一个纯Swift的轻量级、灵活且易于使用的pageView框架 ... [详细]
  • 在软件开发过程中,经常需要将多个项目或模块进行集成和调试,尤其是当项目依赖于第三方开源库(如Cordova、CocoaPods)时。本文介绍了如何在Xcode中高效地进行多项目联合调试,分享了一些实用的技巧和最佳实践,帮助开发者解决常见的调试难题,提高开发效率。 ... [详细]
  • 开发技巧:在Interface Builder中实现UIButton文本居中对齐的方法与步骤
    开发技巧:在Interface Builder中实现UIButton文本居中对齐的方法与步骤 ... [详细]
  • 在Swift 3中,默认情况下不自动关闭转义闭包的原因是为了避免潜在的内存管理和生命周期问题。明确使用“self”则是为了提高代码的可读性和安全性,确保开发者清楚地意识到闭包捕获了外部变量,从而避免意外的引用循环和资源泄漏。 ... [详细]
  • [译]  OS X 和 iOS 的测绘框架Core Plot 入门教程
    [译] OS X 和 iOS 的测绘框架Core Plot 入门教程 ... [详细]
  • SoIwanttomakesomethinglikethisusingswiftandxcode:所以我想用swift和xcode制作这样的东西:WhereIget ... [详细]
  • PyThon_Swift 势必取代 Python?
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Swift势必取代Python?相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 我正在尝试使SwiftUI中的按钮在文本旁边显示图像。但是,即使不在按钮中时图像 ... [详细]
  • 导读:本文来自SwiftGG翻译组,作者@walkingway基于苹果Swift官方博客中TedKremenek所撰写的“Swift2.2Released!”文章进行了关于Swift2. ... [详细]
  • 1.切换Xcode版本假如本地有2个Xcode,切换命令如下sudoxcode-select--switchUsersyushu.lxysoftwareXcode.appConte ... [详细]
  • 本文介绍了iOS数据库Sqlite的SQL语句分类和常见约束关键字。SQL语句分为DDL、DML和DQL三种类型,其中DDL语句用于定义、删除和修改数据表,关键字包括create、drop和alter。常见约束关键字包括if not exists、if exists、primary key、autoincrement、not null和default。此外,还介绍了常见的数据库数据类型,包括integer、text和real。 ... [详细]
  • 在处理大规模数据数组时,优化分页组件对于提高页面加载速度和用户体验至关重要。本文探讨了如何通过高效的分页策略,减少数据渲染的负担,提升应用性能。具体方法包括懒加载、虚拟滚动和数据预取等技术,这些技术能够显著降低内存占用和提升响应速度。通过实际案例分析,展示了这些优化措施的有效性和可行性。 ... [详细]
  • 在C#编程中,数值结果的格式化展示是提高代码可读性和用户体验的重要手段。本文探讨了多种格式化方法和技巧,如使用格式说明符、自定义格式字符串等,以实现对数值结果的精确控制。通过实例演示,展示了如何灵活运用这些技术来满足不同的展示需求。 ... [详细]
  • 深入解析Java虚拟机的内存分区与管理机制
    Java虚拟机的内存分区与管理机制复杂且精细。其中,某些内存区域在虚拟机启动时即创建并持续存在,而另一些则随用户线程的生命周期动态创建和销毁。例如,每个线程都拥有一个独立的程序计数器,确保线程切换后能够准确恢复到之前的执行位置。这种设计不仅提高了多线程环境下的执行效率,还增强了系统的稳定性和可靠性。 ... [详细]
  • 本文探讨了在任务完成后将其转换为最终状态时的异常处理机制。通过分析 `TaskCompletionSource` 的使用场景,详细阐述了其在异步编程中的重要作用,并提供了具体的实现方法和注意事项,帮助开发者更好地理解和应用这一技术。 ... [详细]
author-avatar
鱼氵摆摆和叮叮猫琅_246
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有