7 月若无涯

尚未进行身份认证

我心中有猛虎细嗅蔷薇 https://github.com/YueRuo/

等级
TA的排名 2w+

iOS如何在页面销毁时优雅的cancel网络请求

大家都知道,当一个网络请求发出去之后立即退出页面,会变成无用请求,那么如何用最少的代码,更简洁的方式cancel掉这个无用请求呢?

2017-11-22 14:57:11

macOS10.12下如何丝滑的使用appium?

appium是一个自动化测试的跨平台解决方案,这篇文章针对最新版的xcode 8.2和mac OS 10.12给出基本完成的部署过程,值得一看。 本文为转载,但实际操作过程中,我也遇到了几个问题,在文章开始进行了补充。

2017-01-20 12:20:53

iOS网络诊断功能 ping traceroute

有时需要排查移动客户端网络状况的情况,可能由于某些地区网络运营商的问题,导致客户端某些功能不正常,需要按情况ping某域名、traceroute某域名,那么在App内如何更好的实现呢?

2016-12-02 10:52:42

从 Auto Layout 的布局算法谈性能

如何对 iOS 应用的性能进行优化以及 Auto Layout 到底为什么会影响性能?

2016-09-02 10:30:39

iOS中UI事件处理YRUISignal

遇到一些朋友还在讨论多层级view,事件抛出至VC处理的问题。 其实目前解决方案还是有一些的,比如采用ReactiveCocoa、使用通知等等,但是iOS中单纯的UI事件,其实我们还有更简单的选择: YRUISignal:https://github.com/YueRuo/YRUISignal

2016-09-02 09:32:04

OC 自动生成分类属性方法

分类属性方法自动生成编码全过程。

2016-08-23 16:46:50

动态规划:从新手到专家

我们遇到的问题中,有很大一部分可以用动态规划(简称DP)来解。 解决这类问题可以很大地提升你的能力与技巧,我会试着帮助你理解如何使用DP来解题。 这篇文章是基于实例展开来讲的,因为干巴巴的理论实在不好理解。

2016-08-17 10:07:00

ShareSDK 3.4.0 isWXAppInstalled 返回NO

升级到3.4.0版本的ShareSDK之后,发现[WXApi isWXAppInstalled]方法一直返回false,无法正常使用。初步怀疑是ShareSDK自己的bug。

2016-08-16 11:08:39

iOS10 Keychain 使用注意事项

Keychain是iOS中一直用于存储重要信息,或者删除应用后仍然想保留的数据的地方(比如存储UUID)。 今天在测试iOS10 iPad情况下时,发现数据居然无法写入,而iPhone和之前版本的iPad则都是正常的,目前还不能确认这是否是bug。 解决方案如下:

2016-08-15 17:13:45

关于Xcode8 iOS10下模拟器NSLog不输出的问题

昨天升级了Xcode8beta版,兴高采烈的打开工程启动模拟器后发现自己的NSLog输出在console中看不到了。什么原因?怎么解决?往下看:

2016-06-24 09:56:32

主题皮肤管理YRTheme简单介绍

开发中常常遇到切换主题,夜间模式什么的,一般的做法都是变了新主题就判断一下重新设置新值,代码量较多还不够清晰。 本库将主题素材与代码进行了分离,力求一次代码绑定,后续只需要更改素材即可实现主题样式更改

2016-06-16 17:21:58

在WebView中使用webp格式图片

很早之前,我们的项目中就已经采用了webp格式,但是由于webView本身并不能解析webp格式,所以我们基于webView的文章详情页就无法使用到这项优化。 那么有没有什么办法能实现呢?当然是有的。本文介绍较为核心的处理方案,以及踩过的一些坑。希望对大家有所帮助。

2016-05-31 14:39:28

ReactNative更换JSContext增加注入方法

对于ReactNative中JS端调用iOS的原生代码,其本质上也是利用JSContext来进行处理的,这点在看起源码后可以得到验证。 使用ReactNative调用原生方法,基本都是属于原生代码加个方法,桥接后调用起来的思路。 而本人比较喜欢直接通过JSContext注入方法调用,省去不断添加方法,并且扩展起来容易些。 可惜的是截止目前的版本0.22都不能直接访问到JSContext变量,

2016-03-23 16:42:53

JSPatch 部署安全策略

使用 JSPatch 有两个安全问题:传输安全:JS 脚本可以调用任意 OC 方法,权限非常大,若被中间人攻击替换代码,会造成较大的危害。执行安全:下发的 JS 脚本灵活度大,相当于一次小型更新,若未进行充分测试,可能会出现 crash 等情况对 APP 稳定性造成影响。接下来说下这两个问题的解决方案。传输安全方案一:对称加密若要让 JS 代码传输过

2016-02-22 10:53:49

Keychains中此证书签发者无效的解决方法

最近很多人都遇到了“此证书签发者无效”这样的问题。 其实问题并不在于我们自己生成的证书,而是苹果的WWDRCA证书过期了。 解决方法如下: 1. 下载最新的苹果WWDRCA证书,下载地址:https://developer.apple.com/certificationauthority/AppleWWDRCA.cer,下完安装。 这时候可以检查是否之前的证书已经可用了,如果仍然不可用,则继

2016-02-16 15:36:04

iOS优化项之开启Bitcode

Bitcode这项功能优化还是很明显的。简单说,以前是把所有的arm7、arm64平台的源码编译好,然后打成一个App;现在开启Bitcode之后,用户在AppStore下载到的就只有自己平台对应的那部分,自然是减少了很多不必要的浪费。

2015-12-30 16:05:05

用JavaScriptCore做android和iOS都兼容的JS-NativeSDK

最近在给公司做一个JS-Native的SDK,就是用于JS和原生之间的交互。 使用场景上主要还是webView,那么原先的url拦截的方式已经不再考虑,我们使用了iOS7之后的JavaScriptCore.framework。但是android端的JS端调用需要有interfaceName,调用方式为xxname.log('arg');

2015-11-26 11:01:11

Aspects源码解读:动态Block调用(不定参数的Block)

Aspects是iOS开发中比较著名的AOP开源库,体积小巧而功能强大,其使用的时候有个地方比较有意思:usingBlock参数居然是可以写不定个数个参数的,换句话说,可以调用一个不定参数的Block。

2015-10-13 17:53:04

iOS9 JSONKit闪退解决方案

升级到iOS9之后,发现JSONKit不幸的又出现问题了,那么如何解决呢?终极解决方案: 使用系统的!! 但是使用系统JSON解析很麻烦,项目改动又比较多,尤其是一些第三方库内部也在用JSONKit,怎么办?系统JSON库如何消除换行符和空格?

2015-09-17 17:46:26

iOS 统计打点那些事

统计打点是 App 开发里很重要的一个环节,App 的运行状态、改版后的效果、用户的各种行为等都需要打点,市面上也有不少可供选择的第三方库。 假设产品有这么个需求:当用户在详情页点击购买按钮时,记录一下事件。我们实现起来大概会是这样// DetailViewController.m- (void)onBuyButtonTapped:(UIButton *)button{ //

2015-09-11 11:20:57

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!