Quick Touch – 在 iOS 裝置執行的 “Touch Bar”

Tsui YuenHong發表於2016-11-17
111228408-a53262f39c18f9fe

關於 Quick Touch & Touch Bar

Touch Bar 其實就是在原來 MBP 的按鍵區頂部新增了一個長條形的OLED觸控屏,提供一些常用的快捷鍵。(iMessage 選表情那個真的非常好 ~)

Quick Touch 這個應用的 idea 是受 Touch Bar 激發的。當然,在我看來,Quick Touch 的功能可以比 Touch Bar 更強大,可以遠端控制、自定義命令(不用等應用適配 Touch Bar)、幾乎可以執行所有 MacBook 的操作。

Quick Touch 的功能

Quick Touch 的 github 地址 :https://github.com/xurunkang/QuickTouch

目前的 Quick Touch 介面是十分簡陋的,不過功能基本都實現。
具體功能功能可以參考 Quick Touch 介紹,也可以看演示視訊 Quick Touch 演示

Quick Touch 的實現

大體思路:利用區域網的 socket 連線,iOS 裝置與 MacBook 之間通過 UDP 傳送資訊。
需要解決的問題有:

  1. Mac 切換 app 要及時通知 iPhone,iPhone 再相應地切換每個 app 對應的快捷鍵

    Mac 提供了系統通知 NSWorkspaceDidActivateApplicationNotification 來使得這一功能實現

    Mac 傳送通知,這裡只是監聽了切換應用的事件,有更多通知可以監聽。需要監聽更多事件可以進入 NSWorkspace.h 來檢視通知的名字。

    iOS 接收資訊

  2. iOS 控制 Mac 端的命令

    由於這裡涉及操作過多,就簡單介紹一下,詳細可以看 Github / QuickTouch 的原始碼。

    • 執行快捷鍵:可以使用 CGEventCreateKeyboardEvent 來建立鍵盤事件,從而執行應用的快捷鍵。
    • 輸出命令:如 git log / pwd,原理同上。
    • 點選 Menu Bar 的功能:由於某些功能並沒有快捷鍵,所以要操作 Menu Bar,這裡是使用 Apple Script。
    • 系統設定: 如亮度調節/啟動 app,則需要使用系統中的 API
  3. 自定義命令
    • 自定義鍵盤事件:QTKey 中提供了三個方法使用
    • 自定義系統設定:QTSystemSetting 中提供了一系列方法

Quick Touch 使用的第三方庫

打賞支援我寫出更多好文章,謝謝!

打賞作者

打賞支援我寫出更多好文章,謝謝!

任選一種支付方式

Quick Touch – 在 iOS 裝置執行的 “Touch Bar” Quick Touch – 在 iOS 裝置執行的 “Touch Bar”

相關文章