获得徽章 0
赞了这篇沸点
What’s new in RxSwift 5

- 将 Relay 拆分成一个独立的框架 -- RxRelay
- Variable 最终被弃用
- 新增 do(on:) 重载
- bind(to:) 现在支持多个观察者
- 一个新的 compactMap 操作符
- toArray() 现在返回 Single
- 泛型约束命名整理
展开
评论
#iOS知识小集#「 Xcode文件顺序错乱小技巧 」

有时候对Xcode的中的文件重新导入后,会导致 .h 和 .m 文件不在一起,整个文件顺序都乱了,如图 1 所示:

其实Xcode提供了一种简单的方法,可以让这些文件回归到正确的位置,选中某个目录下的文件,按图中的方法,执行即可,如图2所示:

执行完后,文件就会按照正确的位置显示了。
展开
知识小集于2019-05-13 14:49发布的图片
知识小集于2019-05-13 14:49发布的图片
评论
#iOS知识小集#「 Xcode 模拟器开启全屏模式的两种方式 」

之前 Xcode 的模拟器不支持全屏模式,导致如果我们在 Xcode 全屏模式下编辑调试代码时,经常需要两个窗口来回切换。

从 Xcode 9 开始,模拟器也支持全屏模式了,可以在一个全屏窗口下同时打开 Xcode 和 Simulator,如图 1 所示。不过它默认是关闭的,我们可以通过如下两种方式开启。

* 方式一,在终端执行如下命令并重启模拟器即可:

defaults write com.apple.iphonesimulator AllowFullscreenMode -bool YES

* 方式二,在系统根目录下创建 /AppleInternal 目录:

(1)在终端执行 csrutil status 判断系统 SIP 状态,如果是已经关闭状态,则直接跳到第 3 步,否则通过如下步骤来关闭;
(2)重启 Mac 并按住 ⌘ CMD + R 直到进入 Recovery 模式,然后在屏幕上方菜单栏中找到“实用工具”,打开终端并执行 csrutil disable,最后重启 Mac,确认 SIP 已成功关闭;
(3)在终端执行 sudo mkdir /AppleInternal,如果出现 Operation not permitted 错误,请检查系统 SIP 状态是否关闭;
(4)打开 Xcode 模拟器,就可以在其菜单栏看到一个新的 Internal 选项,如图 2 所示,我们需要勾选 Allow Fullscreen Mode。

最后,通过上述方式开启模拟器的全屏模式后,我们就可把模拟器与 Xcode 拖拽到同一个全屏窗口了。

t.cn
展开
知识小集于2019-05-10 12:50发布的图片
知识小集于2019-05-10 12:50发布的图片
评论
#iOS知识小集#「 获取App冷启动所耗时长 」

在App性能优化中,有一块就是启动时间的优化。那如何获取App冷启动所需要的时间呢?

找到 Edit scheme -> Run -> Auguments 将环境变量 DYLD_PRINT_STATISTICS 设为 1,如图一,然后运行。

运行后,能看到控制台打印出日志。如图二。可以看到在进入 main() 函数之前,一共耗时452.61ms。并且列举了加载比较慢的文件。

把DYLD_PRINT_STATISTICS改成DYLD_PRINT_STATISTICS_DETAILS后运行,能打印出更加详细的日志,如图三。

最后推荐一个代码耗时打点计时器:t.cn,可以记录SDK加载时间、广告页加载时间、首页加载时间等等。
展开
知识小集于2019-05-09 18:11发布的图片
知识小集于2019-05-09 18:11发布的图片
知识小集于2019-05-09 18:11发布的图片
评论
赞了这篇沸点
关于 Xcode 10 New Build System,你需要了解的 5 件事
评论
#iOS知识小集#「 Xcode10 Snippets 」

升级 Xcode10 之后,会发现以前在 Inspector 栏右下角里的 Snippets 不见了,原来是 Xcode 把它单独拎到 toolbar 上了,或者可以使用快捷键 cmd+shift+l将其呼出,也可以直接点击 toolbar 上对应的按钮,如图1所示(图片比较大,流量慎点)。图中依次演示了直接点击 toolbar 以及快捷键的方式,最后一个将 snippets library 弹窗变成常驻的操作为 option + 点击 toolbar 的按钮。

由于单独成了一个弹窗,所以现在创建、编辑、删除 snippet 的操作也发生了变化。创建的话和之前类似,选中代码片段,然后右键菜单选中 Create Code Snippet 即可。如果要用拖拽的方式创建,需要将 library 弹窗常驻。编辑已有 snippet 的操作是选中某条 snippet,然后可能会延迟1秒左右出现一个弹窗,然后自行编辑即可,删除则为选中之后直接按 delete 键即可。

另外一些常用的代码片段可以直接在 GitHub 上找,比如 github.comgithub.com

也如果你也有自己收藏已久的代码片段,可以和我们一起分享。
展开
知识小集于2019-05-08 12:39发布的图片
评论
和老邓相识是2015年,当时我们俩一起面试民生银行同一个项目组……面完后我问他感觉怎样,他指了指随身带的两本《深入理解Android》,淡然地说:没啥,我写的这两本书放那,就随便聊了一下……我当时就跪了……后来我去了百度,就这样错过了和大神共事的机会……最近他又写了本书《深入理解Android JVM ART》,😄,简直了……

这篇文章虽然是写android,但很多东西都是共通的,对具体知识的掌握并不是关键,更重要的是思考问题的方式和方法
展开
1
赞了这篇沸点
使用 OCLint 自定义 MVVM 规则
评论
如果能将用户从 H5 -> APP 的流程进行打磨,将体验进行优化,就能极大程度的提高拉新的转化率,而这其中的关键就是打破 H5 -> APP 之间传递数据,进行无缝衔接的方式。
评论
赞了这篇沸点
杨帝的 BlockHook 已支持 macOS 和 iOS 平台全架构、tvOS 和 watchOS 模拟器
评论
AppHost 是一套解决 H5 和 native 协作开发的整体框架和服务。试图解决 native 和 H5 目前迭代频繁、时间仓促造成质量不高,业务膨胀后代码混乱,两端联调困难,多端协作彼此割裂等痛点。
评论
下一页
个人成就
优秀创作者
文章被点赞 4,729
文章被阅读 582,854
掘力值 16,143
收藏集
1
关注标签
6
加入于