分享方式:


執行範例應用程式:iOS - Xcode (Swift 或 Objective-C)

本快速入門說明如何使用 Xcode (Swift 或 Objective-C) 執行適用於 iOS 裝置的 Azure Spatial Anchors 範例應用程式。 Azure Spatial Anchors 是一項跨平臺開發人員服務,可讓您使用物件建立混合實境體驗,這些物件會隨著時間在裝置之間保存其位置。 完成時,您將會有ARKit iOS 應用程式,可儲存並重新叫用空間錨點。

您將學習如何:

  • 建立 Spatial Anchors 帳戶
  • 設定 Spatial Anchors 帳戶標識碼和帳戶密鑰
  • 在 iOS 裝置上部署和執行

如果您沒有 Azure 訂閱,請在開始之前,先建立 Azure 免費帳戶

必要條件

若要完成本快速入門,請確定您有:

  • 已安裝最新版 XcodeCocoaPods 的開發人員啟用 macOS 計算機。
  • 透過 HomeBrew 安裝的 Git:
    1. 在終端機中輸入下列命令做為單行: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
    2. 執行 brew install gitbrew install git-lfs
    3. 使用 git lfs install (針對目前使用者) 或 git lfs install --system (針對整個系統) 更新您的 Git 組態。
  • 已啟用開發人員的 ARKit 相容 iOS 裝置。

建立 Spatial Anchors 資源

前往 Azure 入口網站

在左窗格中,選取 [建立資源]。

使用搜尋方塊來搜尋 Spatial Anchors

顯示搜尋 Spatial Anchors 結果的螢幕快照。

選取 [空間錨點],然後選取 [ 建立]。

在 [ 空間錨點帳戶 ] 窗格上,執行下列動作:

  • 使用一般英數位元輸入唯一的資源名稱。

  • 選取您要附加資源的訂用帳戶。

  • 選取 [新建] 以建立資源群組。 將它命名為 myResourceGroup,然後選取 [ 確定]。

    資源群組是一個邏輯容器,可在其中部署與管理 Azure 資源 (例如 Web 應用程式、資料庫和儲存體帳戶)。 例如,您可以選擇在稍候透過一個簡單的步驟刪除整個資源群組。

  • 選取要放置資源的位置(區域)。

  • 選取 [建立] 開始建立資源。

[空間錨點] 窗格的螢幕快照,用於建立資源。

建立資源之後,Azure 入口網站 會顯示您的部署已完成。

顯示資源部署已完成的螢幕快照。

選取 [前往資源] 。 您現在可以檢視資源屬性。

將資源的 [帳戶標識符 ] 值複製到文本編輯器中,以供稍後使用。

資源屬性窗格的螢幕快照。

此外,將資源的 帳戶網域 值複製到文本編輯器中,以供稍後使用。

顯示資源的帳戶網域值的螢幕快照。

在 [設定] 底下,選取 [存取金鑰]。 將 [主要金鑰] 值 [帳戶金鑰] 複製到文字編輯器,以供稍後使用。

帳戶 [金鑰] 窗格的螢幕快照。

開啟範例專案

使用終端機來執行下列動作。

執行下列命令來複製範例存放

git clone https://github.com/Azure/azure-spatial-anchors-samples.git
cd ./azure-spatial-anchors-samples

使用 CocoaPods 安裝必要的 Pod:

瀏覽至 iOS/Swift/

cd ./iOS/Swift/

執行 pod install --repo-update 以安裝專案的CocoaPods。

注意

如果您有 macOS Monterey ,請使用下列命令 (12.2.1)

執行 pod update 以安裝專案的CocoaPods。

現在在 Xcode 中開啟 .xcworkspace

注意

如果您在升級至 macOS Catalina (10.15) 之後遇到 CocoaPod 問題,請參閱這裡的疑難解答步驟

open ./SampleSwift.xcworkspace

設定帳戶識別碼和金鑰

下一個步驟是將應用程式設定為使用您的帳戶標識碼和帳戶密鑰。 您在設定 Spatial Anchors 資源,將它們複製到文字編輯器中。

開啟 [iOS/Swift/SampleSwift/ViewControllers/BaseViewController.swift]。

找出欄位, spatialAnchorsAccountKey 並以帳戶金鑰取代 Set me

找出欄位, spatialAnchorsAccountId 並以帳戶識別碼取代 Set me

找出欄位, spatialAnchorsAccountDomain 並以帳戶網域取代 Set me

將應用程式部署至 iOS 裝置

將 iOS 裝置連線到 Mac,並將作用中 設定 設定為 iOS 裝置。

選取裝置

選取 [ 建置],然後執行目前的配置

部署和執行

注意

如果您看到 library not found for -lPods-SampleObjC 錯誤,您可能會開啟 .xcodeproj 檔案,而不是 .xcworkspace.xcworkspace開啟 ,然後再試一次。

在 Xcode 中,按 [停止] 以停止應用程式。

疑難排解

macOS Catalina 的 CocoaPods 問題 (10.15)

如果您最近更新為 macOS Catalina (10.15),並事先安裝 CocoaPods,CocoaPods 可能處於中斷狀態,且無法正確設定 Pod 和 .xcworkspace 項目檔。 若要解決此問題,您必須執行下列命令來重新安裝CocoaPods:

brew update
brew install cocoapods --build-from-source
brew link --overwrite cocoapods

從個人佈建配置檔/開發人員帳戶部署至iOS 10.3.1時,應用程式當機

如果您從個人佈建配置檔/開發人員帳戶在 iOS 10.3.1 上部署 iOS 應用程式,您可能會看到此錯誤: Library not loaded: @rpath/ADAL...

若要解決問題:

  • 使用不是個人小組配置檔的布建配置檔(付費開發人員帳戶)。
  • 將您的應用程式部署到執行 iOS 13.3 或更早版本的 iOS 裝置,或部署到執行 iOS 13.4 Beta 或發行版的裝置。
  • 在 Stack Overflow深入了解此問題。

清除資源

在上述步驟中,您已建立資源群組中的 Azure 資源。 如果您預期未來不需要這些資源,則可以藉由刪除資源群組予以刪除。

從 Azure 入口網站功能表或 [首頁] 頁面,選取 [資源群組]。 然後,在 [資源群組] 頁面上,選取 [myResourceGroup]

在 [myResourceGroup] 頁面上,確定所列出的資源是您想要刪除的項目。

選取 [刪除資源群組],在文字方塊中輸入 myResourceGroup,然後選取 [刪除]

下一步

在本快速入門中,您已建立 Spatial Anchors 帳戶。 然後,您已設定並部署應用程式,以儲存並重新叫用空間錨點。 若要深入瞭解如何改善應用程式,使其可以與其他裝置共享空間錨點,請繼續進行下一個教學課程。