升级 macOS Sierra 后 Chrome 打开 HTTPS 的网页出错的问题

升级 macOS 后,Chrome 访问 HTTPS 的网页总是一闪而过一个错误,然后才会加载成功。在网上看到别人说可能和支付宝的服务有关,移除之后就正常了。移除命令:

sudo launchctl remove com.alipay.DispatcherService

更彻底一些的:

sudo rm -rf /Library/Application\ Support/Alipay /Library/LaunchDaemons/com.alipay.DispatcherService.plist ~/Library/LaunchAgents/com.alipay.adaptor.plist -rf ~/Library/LaunchAgents/com.alipay.refresher.plist ~/Library/Internet\ Plug-Ins/aliedit.plugin ~/Library/Internet\ Plug-Ins/npalicdo.plugin

Android Studio 升级 El Capitan 之后的两个问题

升级 OS X 11 (El Capitan)后 Android Studio 遇到了两个麻烦的问题,在这里记一下。

1. 升级之后字体发虚

这个主要是低分屏下看起来很不舒服,同事的高分屏就没有这个。字体发虚是 JDK 的问题,因为 Jetbrains 全家桶都是基于 Java 开发的,所以把 JDK 的这一不良特性也带了进来,下载直接去苹果官网即可:https://support.apple.com/kb/DL1572

不过也不急解决这个问题,因为下面这个问题可以一起解决

2. 外接显示器+全屏模式会导致一定几率崩溃

这个问题是最让人蛋疼的。因为自己平时习惯两个显示器低头看文档抬头写代码,升级之后莫名其妙就会有一定几率崩溃,而且是随机的完全摸不清头脑,在 V2EX 上连发两个问题也没能得到满意的解决方案(不过第一个问题是很快就有人告诉我是 JDK 的问题,还是十分感谢 V2EX 的)。直到今天 IDEA 15 发布了正式版,下载之后发现切换屏幕焦点之后不像我电脑上装的其他 Jetbrains 产品那样闪屏,仔细看了一下它安装包自带了一个 JDK。所以就尝试了把这个 JDK 放到了 Android Studio 下,果然不出所料,Android Studio 也不闪屏了,而且多显示器全屏的问题似乎也解决了。IDEA 15 下载地址:https://www.jetbrains.com/idea/download/ 社区版就可以了,然后从 .app 文件下把 jre 这个文件夹复制到 Android Studio 的对应目录即可。

更令人高兴的是,用 Intellij 提供的 JDK 同样也可以解决第一个问题。

JetBrains 家应用字体渲染问题

昨天安装了新的系统 El Capitan,升级后发现 Android Studio 中字体很虚,但是其他应用又没有问题,在 v2ex 上提问后有人说 java 环境问题:因为 JetBrains 的 IDE 基本都是用 Java 开发的(包括 Intellij IDEA、php Storm、Android Studio 等),使用苹果提供的 java 环境里有针对系统的字体渲染,而使用 oracle 提供的 jre 就没有。所以同样有字体发虚问题的朋友请到 Apple 官网下载 java 环境即可(R 屏可无视)

OS X下为单个应用设置语言

OS X下的联系人应用在系统语言为英文时,排序总是有问题的,切换到中文就正常了。但又不喜欢看中文的界面,经过搜索可以为某个特定应用设置特定的语言。

defaults write com.apple.AddressBook AppleLanguages '("zh_CN")'

其中com.apple.AddressBook是应用的包名,可以在Info.plist里查找到。

逆操作:

defaults delete com.apple.AddressBook AppleLanguages

音乐 ID3 乱码修复工具

音乐导入进 iTunes 常会有ID3信息乱码,图形工具大多需要付费,介绍一个免费好用的 Java 编写的命令行工具 id3iconv,官方网站在这儿可自行下载。

使用也非常简单,java -jar id3iconv-0.2.1.jar [需要转换编码的 MP3文件].mp3 就可以了。根据这个还可以直接一个批量转换的脚本,好久没碰 Shell 就不在这里写了。

OS X(10.9及以上)中启动 Web 和 php 服务器

拖了好几大月,php 终于要动工了,第一步当然是搭环境。然后 OS X 用户的一大福利是 php 环境系统已经集成了。记得刚买电脑时的 OS X 10.8 还可以在设置共享中直接开启 Web 服务器,貌似10.9之后就没有了,不过这个功能并不是被阉割了,可以使用以下方法来启动 OS X 预装的 Apache 服务器:

sudo apachectl start

lsof命令

以前有从不关机的习惯的(qiang)时(po)候(zheng),总苦恼一件事,就是删除一些应用之后,清空废纸篓总是遇到无法清空正在运行的问题。

后来发现这个问题在终端下使用 remove 命令并没有。但感觉有些别扭(主要是没有刷一下的那个音效。。。)。今天发现了 lsof 这个命令,可以根据文件来查找正在使用这个文件的进程,然后就使用 kill 命令做掉它成功清空回收站了。

另外推荐使用的 Mac 的同学一本书:《MacTalk 人生元编程》,电子版多看上有售。

(注:lsof = “list open files”(列出打开的文件))

Chrome书签图标不显示以及关闭自动更新的方法

最近在OS X Mavericks 上升级 Chrome 30之后发现频繁崩溃,查找查找相关资料发现属于 Chrome 的bug,所以在先退回29。
遇到 Chrome 书签不显示(比如在手动升级直接替换app文件的时候),可以删除位于 Library/Application\ Support/Google/Chrome/Default/ 的 Favicons 文件后重启浏览器解决。

删除 Favicons

rm Library/Application\ Support/Google/Chrome/Default/Favicons

关闭 Chrome 自动更新

defaults write com.google.Keystone.Agent checkInterval 0

(PS: 新版本已经修复这个问题)

在 Mac中离线升级 Android Studio

Android Studio 在线升级一直是个蛋疼问题,挂代理速度比较慢而且不稳定,但是所有蛋疼的在线升级问题都可以用一个方法解决——离线升级包。Mac 用离线升级包和Windows上基本相同只不过路径和资源的url不一样。

  1. http://dl.google.com/android/studio/patches/updates.xml 找最新版本号如 0.2.10 (Build number: 132.843336)

  2. 下载补丁 查找到版本号之后,直接从,http://dl.google.com/android/studio/patches/AI-[旧的版本号]-[新的版本号]-patch-mac.jar 例如从 130.737825 升级到 132.843336 就要下载 http://dl.google.com/android/studio/patches/AI-130.737825-132.843336-patch-mac.jar

  3. 下载之后可以把jar文件拷贝到 /Applications/Android Studio/ 然后终端进入到 Android Studio 目录终端输入

    java -classpath XXXX.jar com.intellij.updater.Runner install . (. 不可忽略,代表当前目录)

    然后会弹出一个升级框,即可完成升级。完成后即可删除jar文件

Airmail两天体验

Sparrow眼看被Google收买之后基本停止了更新,虽说官方承诺短期内会一直维护但恐怕没有大的更新了,只希望他们能做出更好的Gmail给大伙用吧:)。

其实以前用Sparrow也没有花钱买而是用的免费的广告版,以前也用过Airmail的beta版,但不知道什么原因给删掉了,但印象对它的界面和圆图标印象很深,这次看到标价¥12就毫不犹豫的买下来了。