執行範例應用程式:Android - Android Studio (Java 或 C++/NDK)
在此文章
本快速入門說明如何使用 Android Studio 執行適用於 Android 裝置的 Azure Spatial Anchors 範例應用程式(Java 或 C++/NDK)。 Azure Spatial Anchors 是一項跨平臺開發人員服務,可讓您使用物件建立混合實境體驗,這些物件會隨著時間在裝置之間保存其位置。 完成時,您將會有 ARCore Android 應用程式,可儲存並重新叫用空間錨點。
您將學習如何:
建立 Spatial Anchors 帳戶
設定 Spatial Anchors 帳戶標識碼和帳戶密鑰
在Android裝置上部署和執行
如果您沒有 Azure 訂閱 ,請在開始之前,先建立 Azure 免費帳戶 。
必要條件
若要完成本快速入門,請確定您有:
具有 Android Studio 3.4+ 的 Windows 或 macOS 計算機。
如果在 Windows 上執行,您也需要 適用於 Windows 和 Git LFS 的 Git。
如果在 macOS 上執行,請透過 HomeBrew 取得 Git 安裝。 在終端機的單行中輸入下列命令: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
。 然後,執行 brew install git
與 brew install git-lfs
。
若要建置 NDK 範例,您也必須在 Android Studio 中安裝 NDK 和 CMake 3.6 或更新版本的 SDK 工具。
已啟用開發人員且 支援ARCore的 Android裝置。
您的電腦可能需要額外的設備驅動器才能與 Android 裝置通訊。 如需詳細資訊和指示,請參閱 這裡 。
您的應用程式必須以 ARCore 1.11.0 為目標。
建立 Spatial Anchors 資源
前往 Azure 入口網站 。
在左窗格中,選取 [建立資源 ]。
使用搜尋方塊來搜尋 Spatial Anchors 。
選取 [空間錨點 ],然後選取 [ 建立 ]。
在 [ 空間錨點帳戶 ] 窗格上,執行下列動作:
建立資源之後,Azure 入口網站 會顯示您的部署已完成。
選取 [前往資源] 。 您現在可以檢視資源屬性。
將資源的 [帳戶標識符 ] 值複製到文本編輯器中,以供稍後使用。
此外,將資源的 帳戶網域 值複製到文本編輯器中,以供稍後使用。
在 [設定] 底下,選取 [存取金鑰 ]。 將 [主要金鑰] 值 [帳戶金鑰 ] 複製到文字編輯器,以供稍後使用。
從準備適用於 Azure CLI 的環境開始:
登入之後,請使用 az account set 命令來選取要在其中設定空間錨點帳戶的訂用帳戶:
az account set --subscription 00000000-0000-0000-0000-000000000000
執行 az group create 命令以建立資源群組,或使用現有的資源群組:
az group create --name myResourceGroup --location eastus2
資源群組 是一個邏輯容器,可在其中部署與管理 Azure 資源 (例如 Web 應用程式、資料庫和儲存體帳戶)。 例如,您可以選擇在稍候透過一個簡單的步驟刪除整個資源群組。
您可以使用 az spatial-anchors-account list 命令,檢視資源群組 目前的空間錨點帳戶:
az spatial-anchors-account list --resource-group myResourceGroup
您也可以檢視訂用帳戶的空間錨點帳戶:
az spatial-anchors-account list
執行 az spatial-anchors-account create 命令來建立空間錨點帳戶:
az spatial-anchors-account create --resource-group myResourceGroup --name MySpatialAnchorsQuickStart --location eastus2
使用 az spatial-anchors-account show 命令來檢視資源屬性:
az spatial-anchors-account show --resource-group myResourceGroup --name MySpatialAnchorsQuickStart
將資源 帳戶標識碼 值和資源 帳戶網域 值複製到文本編輯器中,以供稍後使用。
執行 az spatial-anchors-account key show 命令來取得主要和次要密鑰:
az spatial-anchors-account key show --resource-group myResourceGroup --name MySpatialAnchorsQuickStart
將金鑰值複製到文字編輯器,以供稍後使用。
如果您需要重新產生密鑰,請使用 az spatial-anchors-account key renew 命令:
az spatial-anchors-account key renew --resource-group myResourceGroup --name example --key primary
az spatial-anchors-account key renew --resource-group myResourceGroup --name example --key secondary
您可以使用 az spatial-anchors-account delete 命令來刪除帳戶 :
az spatial-anchors-account delete --resource-group myResourceGroup --name MySpatialAnchorsQuickStart
從準備適用於 Azure PowerShell 的環境開始:
如果您選擇在本機使用 Azure PowerShell:
如果您選擇使用 Azure Cloud Shell:
重要
雖然 Az.MixedReality PowerShell 模組處於預覽狀態,但您必須使用 Install-Module
Cmdlet 個別安裝它。 此 PowerShell 模組正式推出後,便會成為未來 Az PowerShell 模組版本的一部分,且預設可從 Azure Cloud Shell 內使用。
Install-Module -Name Az.MixedReality
登入之後,請使用 Set-AzContext Cmdlet 來選取要在其中設定空間錨點帳戶的訂用帳戶:
Set-AzContext -SubscriptionId 00000000-0000-0000-0000-000000000000
執行 New-AzResourceGroup Cmdlet 來建立資源群組,或使用現有的資源群組:
New-AzResourceGroup -Name myResourceGroup -Location eastus2
資源群組 是一個邏輯容器,可在其中部署與管理 Azure 資源 (例如 Web 應用程式、資料庫和儲存體帳戶)。 例如,您可以選擇在稍候透過一個簡單的步驟刪除整個資源群組。
您可以使用 Get-AzSpatialAnchorsAccount Cmdlet,檢視資源群組 目前的空間錨點帳戶:
Get-AzSpatialAnchorsAccount -ResourceGroup myResourceGroup
您也可以檢視訂用帳戶的空間錨點帳戶:
Get-AzSpatialAnchorsAccount
執行 New-AzSpatialAnchorsAccount Cmdlet 來建立您的空間錨點帳戶:
New-AzSpatialAnchorsAccount -ResourceGroup myResourceGroup -Name MySpatialAnchorsQuickStart -Location eastus2
使用 Get-AzSpatialAnchorsAccount Cmdlet 檢視資源屬性:
Get-AzSpatialAnchorsAccount -ResourceGroup myResourceGroup -Name MySpatialAnchorsQuickStart
將 property accountId 值和屬性 accountDomain 值複製到文本編輯器中,以供稍後使用。
執行 Get-AzSpatialAnchorsAccountKey Cmdlet 以取得主要和次要密鑰:
Get-AzSpatialAnchorsAccountKey -ResourceGroup myResourceGroup -Name MySpatialAnchorsQuickStart
將金鑰值複製到文字編輯器,以供稍後使用。
如果您需要重新產生金鑰,請使用 New-AzSpatialAnchorsAccountKey Cmdlet:
New-AzSpatialAnchorsAccountKey -ResourceGroupName myResourceGroup -Name MySpatialAnchorsQuickStart -Primary
New-AzSpatialAnchorsAccountKey -ResourceGroupName myResourceGroup -Name MySpatialAnchorsQuickStart -Secondary
您可以使用 Remove-AzSpatialAnchorsAccount Cmdlet 來刪除帳戶 :
Remove-AzSpatialAnchorsAccount -ResourceGroup myResourceGroup -Name MySpatialAnchorsQuickStart
開啟範例專案
執行下列命令來複製範例存放 庫 :
git clone https://github.com/Azure/azure-spatial-anchors-samples.git
cd ./azure-spatial-anchors-samples
執行下列命令來複製範例存放 庫 :
git clone https://github.com/Azure/azure-spatial-anchors-samples.git
cd ./azure-spatial-anchors-samples
從這裡 下載arcore_c_api.h
,並將它放在 Android\NDK\libraries\include
中。
從新複製的存放庫內,執行下列命令來初始化子模組:
git submodule update --init --recursive
開啟 Android Studio。
選取 [開啟現有的 Android Studio 專案 ],然後選取位於 Android/Java/
的專案。
選取 [開啟現有的 Android Studio 專案 ],然後選取位於 Android/NDK/
的專案。
下一個步驟是將應用程式設定為使用您的帳戶標識碼和帳戶密鑰。 您在設定 Spatial Anchors 資源時 ,將它們複製到文字編輯器中。
開啟 [Android/Java/app/src/main/java/com/microsoft/sampleandroid/AzureSpatialAnchorsManager.java
]。
找出欄位, SpatialAnchorsAccountKey
並以帳戶金鑰取代 Set me
。
找出欄位, SpatialAnchorsAccountId
並以帳戶識別碼取代 Set me
。
找出欄位, SpatialAnchorsAccountDomain
並以帳戶網域取代 Set me
。
開啟 [Android/NDK/app/src/main/cpp/AzureSpatialAnchorsApplication.cpp
]。
找出欄位, SpatialAnchorsAccountKey
並以帳戶金鑰取代 Set me
。
找出欄位, SpatialAnchorsAccountId
並以帳戶識別碼取代 Set me
。
找出欄位, SpatialAnchorsAccountDomain
並以帳戶網域取代 Set me
。
將應用程式部署至Android裝置
在 Android 裝置上開啟電源、登入,並使用 USB 纜線將其連線到電腦。
從 Android Studio 工具列選取 [ 執行 ]。
在 [選取部署目標 ] 對話框中選取 Android 裝置,然後選取 [ 確定 ] 在 Android 裝置上執行應用程式。
請遵循應用程式中的指示來放置並重新叫用錨點。
從 Android Studio 工具列選取 [停止 ] 以停止應用程式。
清除資源
在上述步驟中,您已建立資源群組中的 Azure 資源。 如果您預期未來不需要這些資源,則可以藉由刪除資源群組予以刪除。
從 Azure 入口網站功能表或 [首頁] 頁面,選取 [資源群組] 。 然後,在 [資源群組] 頁面上,選取 [myResourceGroup] 。
在 [myResourceGroup] 頁面上,確定所列出的資源是您想要刪除的項目。
選取 [刪除資源群組] ,在文字方塊中輸入 myResourceGroup ,然後選取 [刪除] 。
下一步
在本快速入門中,您已建立 Spatial Anchors 帳戶。 然後,您已設定並部署應用程式,以儲存並重新叫用空間錨點。 若要深入瞭解如何改善應用程式,使其可以與其他裝置共享空間錨點,請繼續進行下一個教學課程。