最近进入一家新公司,接手了一个之前由外包公司承接的项目。首先吐槽一下项目质量,哎毕竟也憋了很久了。

  1.上手项目是打不开的,所有framework静态库全体飘红,一编译七八十错误。最终是偷懒还是什么就不得而知了。最终慢慢一个个的将静态库framework导入Building Phases中,其中又发生了很多意想不到的错误。若有人对此有兴趣我们可以下次再聊这些问题。

  2.项目代码分类封装问题。项目是用Swift写的,而我之前使用的较多的是Objective-C,Swift用的不多,对Swift的印象就是:一升级Xcode就满屏红点;各类三方库都需要用桥来连接;等等等等诸如此类问题吧。当然这并不是主要槽点,毕竟Swift是个大趋势,iOS开发人员向前看的话,Swift是必须要了解熟悉到精通的。但似乎目前直接全盘用Swift来写的公司并不多,大多数都是OC慢慢向Swift转换吧。直接用Swift写项目,一定是大神。抱着这样欣赏的眼光我开始看代码。然后我恨不得为刚才自己的判断抽自己两巴掌。

  所有代码都没有分类,除了大的MVC框架,底下的各个小模块的控制器都混在一个目录下。然后类的命名上,首字母大小写不分,直接汉语拼音这种kongtiaoController都出来了。我天对我个强迫症这简直要亲命好吗。一周工作进度没多少,全给分辨各式各样莫名其妙的类名、方法名参数上去了。

  代码的封装问题。例子:项目是用Post请求数据,参数在上传前需要MD5加密,大概30行代码左右。一般这种哪个类里面都有可能用到的代码,写个工具类来执行就完事儿了,代码看着省心,复用率高。可人偏不,每一页都复制粘贴一下,就改一个参数,其他都不改原封不动复制粘贴。第一次看到有种砸电脑的冲动,我想大家都懂。

  大概就扯这么多吧。不管怎么样,拿着老板的钱,就看代码呗。昏天黑地改了一周代码后,老板说,打包上传吧。我说先做个真机测试吧,老板一挥手,去吧。我就回来准备用五分钟真机测试下就打包,结果就出现了如下的问题:在Build Success,真机打开启动页后,程序崩溃,提示如下:

  因为是解决了办法才来写博文,之前也没有截图问题,现在也不敢乱改回去了。我的错误就是log中Pods.framework换成SwiftHTTP。看到之后真心内心是崩溃的。这什么鬼?SwiftHTTP本身就不是我多么熟悉的框架,再加上并不知道具体是什么原因导致的这个问题。得,Google吧。

  最终大概出现了这些解决办法:

  1.clean&run,不行重启手机clean&run

    目测某些大神人品摆平一切,我这儿什么都没有发生。要多扶老奶奶了。

  2.Build Phases中重新导入SwiftHTTP

    什么都没有发生。

  3.SwiftHTTP的Required换成Optional可选

    这是提及频率最高的办法了,也有好多人似乎用这个方法成功解决了问题。大概解释是使用的框架不支持低的版本,所以设置成可选来配置是否可用。

    哎这是个想法,顿时我就去看了我的Deployment Target,是9.0。难道是这儿的问题?

    首先,9.0换成9.3,安装,继续崩溃。

    Required换成Optional,编译报错,具体问题忘了,大概就是link不到框架。

    9.3换成9.0,编译继续报错。哎放弃了。

  4.在某个角落发现了这么不起眼的一句话:DFULibrary.framework静态库是添加在Embedded Binaries下面的

    当然那个答主是将Embedded Binaries里面的framework转移到Build Phases中,而我当时除了SwiftHTTP其余的几个静态库都在Embedded Binaries中存在。难道是这个问题?

    试着在Embedded Binaries中导入SwiftHTTP,运行,崩溃。哎我又去设置Required和Optional了,却意外发现Build Phases中存在两个SwiftHTTP。难道Embedded Binaries中会自动导入Build Phases?我试着删除,成功运行。

  五分钟的真机测试弄了一整天左右吧。哎碰到这种不知所云的崩溃真是没什么办法。

  至今仍不知道为什么会这样,这也只是解决办法,原理求大神告知吧。

iOS真机测试中出现dyld`dyld_fatal_error错误的更多相关文章

  1. IOS真机测试

    学习了两天的Android开发,我感觉Android开发跟IOS开发和.NET平台下的开发有点不同,Android开发我更觉得跟web(Html)倒是有类似的地方,都是节点标签显示的,当然个人理解,感 ...

  2. iOS真机测试,为Provisioning添加设备 -- based xcode6[原]

    iOS真机测试,  我们需要添加几台新的设备进行测试.我们只需要对Provisioning Profiles 进行更新. 1. 在苹果开发者中心添加测试设备 打开苹果Certificates, Ide ...

  3. Unity导出iOS真机测试教程

    原地址:http://unity3d.9tech.cn/news/2014/0410/40177.html 学 习了两天的Android开发,我感觉Android开发跟IOS开发和.NET平台下的开发 ...

  4. Xamarin.iOS真机测试报错

    Xamarin.iOS真机测试报错   错误信息:The MinimumOSVersion inside Info.plist does not include the device version( ...

  5. iOS 真机测试错误“The application bundle does not contain a valid identifier”

    iOS 真机测试错误"The application bundle does not contain a valid identifier" 真机测试的时候报错:"The ...

  6. iOS 真机测试错误“The application could not be verified”

    iOS 真机测试错误"The application could not be verified" 真机测试的时候报错:"The application could no ...

  7. 关于微信小程序开发环境苹果IOS真机预览报SSL协议错误问题解决方案

                              微信小程序开发环境苹果IOS真机预览报SSL协议错误问题 原文来自:https://blog.csdn.net/qq_27626333/articl ...

  8. IOS真机测试(用证书进行真机测试)

    真机测试需要准备 1.证书 2.Iphone或者Ipad 3.到developer.apple.com注册开发者账号(不用money的) ------------------------------- ...

  9. ios 真机测试与发布详细流程,基于最新的开发者网站,ios7,xcode5(有截图的哦)[[[第一部分真机测试]]]

    转载于:http://blog.csdn.net/lv_ruanruan/article/details/14446597 真机测试及发布详细流程,最新版 第一次一个人搞一个项目,我们老大规定,一个周 ...

随机推荐

  1. HDU 1562 Guess the number

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1562 Problem Description Happy new year to everybody ...

  2. Node.js:EventEmitter

    概要:本篇博客主要介绍EventEmitter Node.js所有的异步I/O操作在完成时都会发送一个事件到事件队列.事件由EventEmitter对象提供.下面通过一个例子来说明EventEmitt ...

  3. hdu_5286_wyh2000 and sequence(分块)

    题目链接:hdu_5286_wyh2000 and sequence 题意: 给一段长度为N的序列,每次询问l-r(l和r和上一次询问的答案有关)内 不同的数的 出现次数的次方 的和.强制在线 题解: ...

  4. What is Flux?

    Pluralsight - React and Flux for Angular Developers 1. An architectural concept. It a idea. 2. Not a ...

  5. Node使用Mongoose操作MongoDB数据库——增删改查的实现

    当初刚出社会时就规划了下自己的职业生涯:先成为一名优秀的前端工程师,再成为一名全栈工程师(精通前端开发.后台开发和客户端开发),最后成为一名优秀的系统架构师.转眼间已经工作快三年,是时候迈出关键性的一 ...

  6. IOS CrackMe 破解学习

    一直在看别人如何破解一个app,下面自己也尝试着学习怎么去破解一个app的密码,下面是完整的过程. 准备工作: 一台mac或者pc安装了ssh客户端 一台越狱的iphone iphone上安装了ope ...

  7. Leetcode015 3Sum

    public class S015 { public List<List<Integer>> threeSum(int[] nums) { Arrays.sort(nums); ...

  8. [ An Ac a Day ^_^ ] CodeForces 677B Vanya and Food Processor 模拟

    题意: 你有一个榨汁机 还有n个土豆 榨汁机可以容纳h高的土豆 每秒可以榨k高的东西 问按顺序榨完土豆要多久 思路: 直接模拟 一开始以为是最短时间排了个序 后来发现多余了…… #include< ...

  9. CSS 背景 background 讲解

    背景语法:background: background-color || background-image || background-repeat || background-attachment ...

  10. erlang dets

    1.dets表包含set.bag.和duplicate bag 2.dets:open_file(TableName,Options)创建或打开表 3.Options 1){auto_save,Int ...