watchOS app 開發筆記:傳遞資料
這一篇筆記主要是要記錄如何在 iPhone app 跟 watchOS app 之間傳遞資料。
iPhone 跟 Apple Watch 的溝通方式
iPhone app 跟 Watch app 可以透過設定相同的 App Group 共享檔案,也可以透過 WatchConnectivity 溝通,App Group 的方式沒什麼好說的,所以來紀錄 WatchConnectivity 的作法。它主要分為兩種方式:
繼續閱讀 ➜這一篇筆記主要是要記錄如何在 iPhone app 跟 watchOS app 之間傳遞資料。
iPhone app 跟 Watch app 可以透過設定相同的 App Group 共享檔案,也可以透過 WatchConnectivity 溝通,App Group 的方式沒什麼好說的,所以來紀錄 WatchConnectivity 的作法。它主要分為兩種方式:
繼續閱讀 ➜最近剛好有機會要整合 Unity 到 SwiftUI 開發的 app 裡頭,整個過程不算難,但是蠻繁瑣的。網路上的資料絕大部分都是跟 Objective-C / UIKit 的整合,比較少 Swift / SwiftUi 相關資料,所以趁著記憶猶新的時候把它記錄下來,希望可以幫助到其他人以及未來的自己。
從 Unity 2019.4 的版本開始,它提供了 UaaL (Unity as a Library) 功能,可以把 Unity 專案匯出成 framework 讓其他程式使用,開啟了原生平台與 Unity 互動的更多可能性。你可以只用 Unity 開發遊戲或其他精美畫面的部分,剩下的則是使用原生平台(例如 iOS 或 Android)開發。
我使用的開發環境是 Xcode 12.5 + Unity 2020.3.15f2 LTS,預期達成以下目標:
先附上 sample code。這篇文章會有大量程式碼,也會假設你對 Xcode 跟 Unity 的操作有基本的認知,廢話不多說,讓我們開始吧!
繼續閱讀 ➜在每個 macOS 使用者的根目錄底下都有一個「公用 (Public)」目錄,而且這個目錄裡頭還有一個「投遞箱 (Drop Box)」目錄,身為 Mac 使用者這麼多年一直不知道它們的真正用途,直到最近...
最近因應疫情,很多人必須使用自己的電腦在家工作,然而我家只有一台電腦,所以我就幫家人建立一個新的使用者帳號方便工作用。建立好新的使用者帳號之後,該怎麼讓不同帳號之間共享檔案呢?這時候就需要「公用」跟「投遞箱」了:
更詳細的說明可以參考蘋果官方說明文件。
好幾年前我曾經寫過一篇讓 Xcode 專案易於版本控制的方法,它非常的好用,我也在多個專案裡頭使用這樣的配置用了好多年,都沒有出過什麼問題。
直到最近遇到了 SwiftUI 的 Preview 功能。
猜測可能是因為原先的設定是在 Build phase 去執行排序的 script,導致它破壞了 SwiftUI Preview 的一些機制,我想到了幾個解法,像是
最後我選擇了 pre-commit 的做法。
繼續閱讀 ➜我有私人的 GitHub 帳號,為了方便自己跟公司管理起見,我用公司的信箱申請另一個 GitHub 帳號來存取公司的 repo。
同一台電腦的一組 SSH Key 只能綁定到一個 GitHub 帳號,無法用同一組 SSH key 綁定到多組帳號,所以我無法把綁到私人帳號的 SSH Key 再綁到公司帳號。
我要在同一台電腦建立不同的 SSH Key 對應到不同的 GitHub 帳號,並且在執行 git 操作時,系統會自動選擇對應的 SSH key。
我的小孩逐漸長大,到了需要看得懂時鐘的年紀了,但經過多次的嘗試,無論是看圖學習或是寫練習本,他就是記不住要怎麼看指針時鐘。
還好,我是一個工程師,而且是一個會開發 iOS App 的工程師。
既然小孩會被手機 app 吸引、研究報告又證實在遊戲中學習的效果好,那我就來開發一款 app 讓孩子可以不停的練習吧。所以趁著防疫期間,我就做了一個很簡單的 app,它會隨機顯示時間,只要正確輸入顯示的時間,就會再隨機顯示另一組時間。
就是這麼簡單樸實的一個小東西,卻可以讓小孩玩得不亦樂乎,而且效果驚人,不到一個星期他已經會看時鐘了!
有興趣的人可以來這裡下載原始碼,自己安裝到手機上玩。
