天天看點

配置Xcode項目

Xcode會将Watch應用和WatchKit應用擴充打包,然後放進現有的iOS應用包中。Xcode提供了一個搭建Watch應用的模闆,其中包含了建立應用、glance,以及自定義通知界面所需的所有資源。該模闆在現有的iOS應用中建立一個額外的Watch應用對象。

向iOS應用中添加Watch應用

要向現有項目中添加Watch應用對象,請執行以下操作:

1. 打開現有的iOS應用項目

2. 選擇 File > New > Target,然後選中Apple Watch

3. 選擇 Watch App

4. 單擊 Next

5. 如果您想要使用glance或者自定義通知界面,請選擇相應的選項

我們建議您激活應用通知選項。選中之後就會建立一個新的檔案來調試該通知界面。如果您沒有選擇這個選項,那麼之後您隻能手動建立這個檔案了。

6. 單擊 Finish

完成上述操作之後,Xcode将WatchKit應用擴充所需的檔案以及Watch應用添加到項目當中,并自動配置相應的對象。Xcode将基于iOS應用的bundle ID來為兩個新對象設定它們的bundle ID。比如說,iOS應用的bundle ID為`com.example.MyApp`,那麼Watch應用的bundle ID将被設定為`com.example.MyApp.watchapp`,WatchKit應用擴充的bundle ID被設定為`com.example.MyApp.watchkitextension`。這三個可執行對象的基本ID(即`com.example.MyApp`)必須相比對,如果您更改了iOS應用的bundle ID,那麼您就必須相應的更改另外兩個對象的bundle ID。

應用對象的結構

Xcode中的WatchKit應用擴充模闆為iOS應用建立了兩個新的可執行程式。Xcode同時也配置了項目的編譯依賴,進而讓Xcode在編譯iOS應用的同時也編譯這兩個可執行對象。圖2-1說明了它們的依賴關系,并解釋了Xcode是如何将它們打包在一起的。WatchKit依賴于iOS應用,而其同時又被Watch應用依賴。編譯iOS應用将會将這三個對象同時編譯并打包。

圖2-1 Watch應用對象的結構**

配置Xcode項目

編譯、運作以及調試程式

當您建立完Watch應用對象後,Xcode将自行配置用于運作和調試應用的編譯方案。使用該配置在iOS模拟器或真機上啟動并運作您的應用。

對于包含glance或者自定義通知的應用來說,Xcode會分别為其配置不同的編譯方案。使用glance配置以在模拟器中調試glance界面,使用通知配置以測試靜态和動态界面。

為glance和通知配置自定義編譯方案

1. 選擇現有的Watch應用方案

2. 從方案菜單中選擇Edit Scheme

配置Xcode項目

3. 複制現有的Watch應用方案,然後給新方案取一個合适的名字。

比如說,命名為“Glance - My Watch app”,表示該方案是專門用來運作和調試glance。

4. 選擇方案編輯器左側欄的Run選項

5. 在資訊頁籤中,選擇合适的可執行對象

配置Xcode項目

6. 關閉方案編輯器以儲存更改

當您在iOS模拟器調試自定義通知界面的時候,您可以指定一個JSON負載來模拟進來的通知。通知界面的Xcode模闆包含一個RemoteNotificationPayload.json檔案,您可以用它來指定負載中的資料。這個檔案位于WatchKit應用擴充的Supporting Files檔案夾。隻有當您在建立Watch應用時勾選了通知場景選項,這個檔案才會被建立。如果這個檔案不存在,您可以用一個新的空檔案手動建立它。

`RemoteNotificationPayload.json`檔案包含了絕大多數您需要的鍵值,但是您可以根據應用程式的實際情況添加更多的鍵值。圖2-2展示了項目中的預設JSON檔案。由于iOS模拟器無法通路iOS應用的注冊動作,這個負載便包含了一個名為“WatchKit Simulator Actions”的鍵值,其值為一個包含了一系列動作的數組。每個動作按鈕含有`title`和`identifier`鍵,它們的值和iOS應用中注冊的相應鍵值相同。

圖2-2 一個模拟的遠端通知負載:

配置Xcode項目