iOS Task#19 | Use the Third-party SDK in Xcode Playground

AH
彼得潘的 Swift iOS / Flutter App 開發教室
5 min readDec 14, 2021

SPM (Swift Package Manager) 從開放原始碼開始一直是 Xcode 的一個部分,但一直到 Xcode 11 之後,終於把 SPM 結合到 Xcode IDE 上。

SPM (Swift Package Manager)

一種用於管理 iOS 應用程式中相依套件 (Dependencies) 的工具。
相依套件 (Dependencies) 包含第一方套件、第三方套件和Framework,都可以運用 SPM 將這些套件加到自己的 Project 中。
也可以使用 CocoaPods,其實在 Xcode 內建支援 SPM 之前,CocoaPods 是 iOS一直以來最方便使用的 Dependency Manager。

Dependency 相依套件

可以你的 App 所使用的資料庫 (Library)、軟體框架 (Framework)、軟體包 (Package)或軟體開發工具套件 (SDK),通常是以第三方的程式碼加入你的 iOS Project。

Adding Dependencies to Your App

Step 1. Create New Project

Step 2. Setting in Playground

在專案中再新增一個Playground

選擇剛剛新增的專案為Playground儲存的資料夾

Add to : 選擇剛剛新增的專案名稱,按下Create新增

左側 Project Navigator 選擇剛新增的 Playground

看到右邊的 File Inspector,勾選 Build Active Scheme,這樣才可以在 Playground 中使用專案加入的套件

Step 3. Swift Packages

Project Navigator 選擇專案,在 Project 也選擇專案,然後切換到 Package Dependencies 分頁。

按下左下角的+來新增套件 (package)

Step 3. 找到要插入的第三方套件 GitHub 網址

SwiftyDraw 來試做

網址:https://github.com/Awalz/SwiftyDraw

Step 4. Search Swift Packages

貼到 Swift Package 的 Search Bar

選擇套件版本,再按下 Add Package。

有幾個選擇:

  • Up to Next Major Version A.0.0 < B.0.0 : 表示套件未來改版時,最多升級到 A.9.x 的最後一次更新,不會更新到 B 版本 (版本第一碼為Major,表示一次大改版)
  • Up to Next Minor Version A.0.0 < A.1.0 : 更保守的版本選擇,表示套件改版以最小的第三碼為單位,至多只升級到A.0.9,不更新到A.1.0,保持套件的穩定性
  • Range of Versions : 指定版本的範圍
  • Exact Version : 指定特定版本

如何看到套件有什麼版本更新?

在套件的 GitHub 頁面,選擇 tags 的分頁

就可以看到開發者提供套件的各版本更新狀態:

或是從 master 底下的 tags 也可以看到:

Step 5. 確認安裝套件

安裝完成後,左側 Project Navigator 會出現 Package Dependencies,並列出已經安裝的套件,在右側也會出現相關資訊

Step 6. Start using SwiftyDraw

試著在 Playground 輸入以下程式

--

--