9 devqiang

尚未进行身份认证

编程之久除了算法和数据结构,什么也不属于我们。

等级
TA的排名 10w+

iOS 开发ipa包瘦身 -- 可执行文件大小

项目写完以后打出来的包太大分析一下首先打开Products下有个.app文件右键showinfinder后再次右键显示包内容项目打包后的文件就会一一罗列在这里。这里重点看一下这里有个黑色的可执行文件,在我项目里一开始竟然达到了50M+那么这个文件具体由什么组成的呢?我们在项目的BuildSettings里面搜索map把WriteLinkMapFi...

2019-04-03 17:26:26

抛弃UITableView,让所有列表页不再难构建

首先要对点进来的看官说声sorry,我标题党了。

2018-12-20 14:03:49

适配iOS11&iPhoneX的一些坑

前阵子项目开发忙成狗,就一直没做iOS11的适配,直到XcodeGM版发布后,我胸有成竹的在iPhoneX上跑起项目,整个人都凉透了...下面总结一下我遇到的坑,不是很全面,日后补充。导航栏导航栏高度的变化iOS11之前导航栏默认高度为64pt(这里高度指statusBar+NavigationBar),iOS11之后如果设置了pre

2017-09-22 10:03:38

创建私有Pods,从小白到老铁

前言骚年,你听说过组件化吗?没有?但你一定玩过乐高玩具,乐高玩具本身一个庞大的模型却是依靠无数个各自分工的基础模块构建而成!同理,随着项业务的增长,项目也必然越来越庞大。此时,为了更好地管理我们的项目,我们可以适当地拆分部分模块与其相关业务逻辑。这样不仅能提高相关模块的复用性也使其单元测试变得可行等。如何进行组件化管理CocoaPods是一个很好的三方开源库管理工具,在配

2017-08-18 15:23:28

[iOS]一次立竿见影的启动时间优化

之前公司的UI设计师和我们提过好几次启动时间的事情,当时在开发业务,所以没有时间去做这件事。最近发完版本,终于有时间搞一搞启动时间了。一般而言,启动时间是指从用户点击APP那一刻开始到用户看到第一个界面这中间的时间。我们进行优化的时候,我们将启动时间分为pre-main时间和main函数到第一个界面渲染完成时间这两个部分。为什么这么划分呢?大家都知道APP的入口

2017-08-18 15:10:25

iOS 通用链接(UniversalLinks)+ 分享功能的一些看法

引子:你有没有想过为你的用户减少一道操作?什么是通用链接?通用链接是iOS9出的一个特性,他能让用户通过链接直接打开你的APP。经常配合分享功能,让用户快速进入到我们的APP里面。APP的两大引流功能-->分享+推送,个人认为应该在这上面多下功夫。分享功能至少要能将对你们APP感兴趣的用户引入到APP,但是我很失望的看到很多APP没有做到这一点,就更别提使用通用

2017-08-18 14:40:03

适配iOS11 - UITableview UICollectionView MJRefresh下拉刷新错乱

发现问题升级Xcode9+iOS11后,发现原本没问题的collectionView和tableView像是中了风一样,头部刷新UI出现了错乱。查阅发现iOS11弃用了automaticallyAdjustsScrollViewInsets属性,新增contentInsetAdjustmentBehavior来替代它关于contentInsetAdjustmen

2017-08-11 15:45:13

iOS | 小心NSTimer中的循环引用

NSTimer大家都很熟悉,觉得用起来也很简单.然而,由NSTimer引起的循环引用,不经历过一次,一般很难查.下面看一段代码:-(void)viewDidLoad{[superviewDidLoad];_timer=[NSTimerscheduledTimerWithTimeInterval:0.1

2017-08-11 14:50:15

iOS内购(IAP,In App Purchases-在APP内部支付),设置及使用

项目中使用到了中间货币(金币)的形式来进行功能使用,模式是使用RMB换成-金币比如:(1RMB=10金币),所以会集成第三方的支付平台,使用了微信和支付宝的第三方平台过后,发现审核失败,被苹果拒绝,查了一查原因,才是因为苹果对app内的中间币的购买必须走苹果内购(比如冲点券,比如买钻石....)。所以无奈只有使用苹果内购,由于苹果内购的步骤很多,设置的东西太多,所以将这步骤记录下来。首

2017-07-05 12:22:12

处理ipv6和内购(IAP)及掉单问题的正确姿势

最近开发一个项目涉及到内购,也遇到过一些问题.这里拿出来分享一下,避免一些人走弯路.开头先聊一聊最近苹果关于2017年新的审核机制和沸沸扬扬的微信和苹果的撕逼1.2017新的审核机制:ipv6:使用国内阿里云的app上架,大都会遇到ipv6被拒的邮件:解决方案:方案1.服务端解决: 配置阿里云ECS支持IPv6,添加AAAA解析方案2.

2017-06-26 15:58:05

[置顶] 【重点推荐】iOS开发之芝麻信用SDK的超详细使用教程

转自:http://blog.csdn.net/l2i2j2/article/details/51254816其实每一个第三方SDK的使用都差不多,看着官方给的开发文档和Demo就能依样画瓢自己做出来。我只是希望帮助一下刚入行不久的新人。先附上官方文档的地址:芝麻信用iOS开发文档一、先做一些必备的工作由于需要导入的Framework比较多,先创建一个F

2017-06-01 17:34:06

GCD封装

前言很久以前,手机的性能取决于处理器的处理速度。在经过很长的一段时间发展之后,单个处理器的处理效率几乎达到了极限。这时候多核处理器就诞生了,使得手机有了同时执行多个任务的能力。在单核时代,使用多线程技术更多时候是为了避免耗时操作堵塞了主线程。而在多核时代,多线程技术才真正完成了提升执行效率的工作。iOS提供了包括pthread_t在内的四种多线程方案,其中GCD作为苹果爸爸重视的多

2017-04-20 11:20:57

YYKit学习笔记

概述YYKit是集大成者的第三方表现,堪称国内最优秀的框架。因此,在YYKit中有太多的技术点值得挖掘思考,本文用来记录YYKit源码阅读中的心得以及认为有价值的技术点QoSThefollowingQualityofService(QoS)classificationsareusedtoindicatetothesystemthenatur

2017-04-20 11:20:08

iOS10跳转系统设置的正确姿势

在iOS10更新后,系统设置跳转被禁用,只能跳转App设置?NO,NO,NO,看这里,又可以换个姿势愉快的跳转啦。其实方法很简单,例如原有跳转Wi-Fi设置是"prefs:root=WIFI",新的写法是"App-Prefs:root=WIFI"。怎么样,是不是很简单!!!在非iOS10手机中,也可以用此方法进行跳转,但不保证跳转正确性非iOS10系统跳转,可以

2017-04-17 18:06:19

MLeaksFinder检查iOS APP内存泄漏

前言一般来说,iOS的内存泄露检测大多是通过Instruments里面的Leaks.Leaks里面可以看到某各类有多少个实例,还会指出一些循环引用的图示和泄露点.虽然看起来很美好,但是每次实际使用的时候,多多少少会出现一些问题,最让人难以忍受的就是明明泄露了但是没有报警. 为了解决这个问题,在这里介绍一个MLeaksFinder的开源库,这个库是代码级别的检测vi

2017-02-15 18:00:55

iOS开发经验总结

项目时间紧张了,要自己带孩子了,又有同事离职了,写作兴致不高了,等等原因,就是不想写点什么,就想躺在沙发上,什么都不想动。今天2个版本终于提交AppStore了,突然有好多时间可以挥霍,很是HAPPY。^-^1.cocoapods常用的frameworkplatform:ios,'7.0' target'store'do p

2017-02-15 17:57:02

JSPatch 初体验 ——各种坑和工具、文章(不定期更新)

前言:前阵子项目刚上线很闲,自己学新东西,突然发现一个很牛的东东——JSPatch,线上直接改BUG的利器啊(直接用来写模块个人现在还没那技术,而且Reactnative会更好,虽然我不会~。~),虽然一点都不懂JS,但是不需要审核,直接线上改bug的诱惑太大了,果断花两天时间学了下JS大体懂了,然后开始研究JSPatch。工具首先先把几个很好用的工具和文章贴在下面,工欲善

2017-02-13 12:07:58

JSPatch中文资料整理

有问题可以直接搜索:https://www.google.com.hk/search?q=私有变量%20site%3Agithub.com%2Fbang590%2FJSPatch把{私有变量}替换成你想问的关键字就行。基础JSPatch基础用法使用JSPatch开发功能模块常见问题如何排查问题进阶performSelectorInOC使用

2017-02-13 10:35:13

iOS 10 跳转系统设置

苦心人天不负,为了项目终于把iOS10跳转系统设置的方法给搞定了,很欣慰.  http://www.cnblogs.com/lurenq/p/6189580.html  iOS10跳转系统设置的字段电池电量Prefs:root=BATTERY_USAGE通用设置Prefs:root=General存储空间Prefs:root=General&path=STORAGE_IC

2017-02-10 16:24:52

WKWebView 那些坑

导语WKWebView是苹果在WWDC2014上推出的新一代webView组件,用以替代UIKit中笨重难用、内存泄漏的UIWebView。WKWebView 拥有60fps滚动刷新率、和safari相同的JavaScript引擎等优势。简单的适配方法本文不再赘述,主要来说说适配WKWebView过程中填过的坑以及善待解决的技术难题。1、W

2017-01-20 17:22:22

查看更多

勋章 我的勋章
    暂无奖章