<译>最佳的iOS开发技巧及小窍门


我选择沉默的主要原因之一:从话语中,你很少能学到人性,从沉默中却能。假如还想学得更多,那就要继续一声不吭 。
——王小波《沉默的大多数》

前言

  • 本文翻译自“Best iOS Development Tips and Tricks”
  • 英文原文请点击此处查看
  • 译者注:文中部分功能涉及到视频演示,视频来源YouTube,请自备梯子。

正文

1、如果你想知道项目的确切构建时间,请用下面指令开启Xcode的相关功能。

1
defaults write com.apple.dt.Xcode ShowBuildOperationDuration -bool YES

enjoy

2、 提升你Swift项目的构建时间

  • 在Xcode 9.2的发布说明中提到一个可以提升Swift项目构建时间的功能(处于实验阶段),使用buildsystemscheduleinherentlyparallelcommandclutly用户默认值启用。
1
defaults write com.apple.dt.Xcode BuildSystemScheduleInherentlyParallelCommandsExclusively -bool NO
  • 提示:根据发布说明这是一个试验阶段的功能,会导致构建阶段内存消耗增加。

3、模拟器和Xcode在全屏模式下共存

  • 能在全屏模式下同时使用Xcode和iOS模拟器,可能是我在Xcode9最喜欢的一个功能。你只需要在终端执行下面的指令开启
1
defaults write com.apple.iphonesimulator AllowFullscreenMode -bool YES
  • 如果你想使用更多的模拟器的秘密功能,请开启苹果隐藏的内部菜单栏,你需要在用户根目录创建一个名字为AppleInternal的空文件夹,然后执行下面指令重启模拟器即可。
1
sudo mkdir /AppleInternal
  • 新的菜单栏就会出现
    simulator_newMenu

4、iOS模拟器录制视频

  • 你可以使用xcrun command-line工具截取模拟屏幕快照或者录制模拟器屏幕视频。
  • 录制视频请执行下面指令
1
xcrun simctl io booted recordVideo <文件名>.<文件后缀>.
  • 例如:
1
xcrun simctl io booted recordVideo appvideo.mov
  • 快捷键control + c停止视频录制,录制的适配文件默认会在当前目录保存。

5、从Finder共享文件到iOS模拟器

  • 从Xcode9开始,模拟器允许使用Finder扩展直接从Finder窗口共享文件。然而,拖动文件到模拟器放开似乎更加快捷。
  • 然而你也可以使用下面simctl命令做一些和图片/视频文件相似的事情。
1
xcrun simctl addmedia booted <PATH TO FILE>

6、使用指纹sudo

  • 如果你想使用指纹作为你Macbook Pro执行sudo时的密码,请编辑/etc/pam.d/sudo文件将下面一行添加在文件上面。
1
auth sufficient pam_tid.so
  • 现在你可以使用指纹执行sudo了。

7、使用声音通知调试你的自动布局约束

  • 这将是一个非常好的方式去调试自动布局约束,仅仅在启动的时候传递UIConstraintBasedLayoutPlaySoundOnUnsatisfiable参数,当约束在运行时出现糟糕情况的时候就会播放声音。
1
-_UIConstraintBasedLayoutPlaySoundOnUnsatisfiable YES

8、移除Xcode中无效的模拟器

  • 这个小命令将移除Xcode中所有无效的模拟器,所谓无效是指对xcode-select无效的Xcode版本。
1
xcrun simctl delete unavailable

你最喜欢的功能是什么?请告诉我。

要不要鼓励一下😘