你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn 。
运行示例应用:Android - Android Studio(Java 或 C++/NDK)
本文内容
本快速入门介绍如何使用 Android Studio(Java 或 C++/NDK)为 Android 设备运行 Azure 空间定位点 示例应用。 Azure 空间定位点是一种跨平台开发人员服务。通过该服务,可以使用能够随时间推移跨设备保存自己位置的对象创建混合的现实体验。 完成后,将获得一个 ARCore Android 应用,该应用可以保存和重新调用空间定位点。
将了解如何执行以下操作:
创建空间定位点帐户
配置空间定位点帐户标识符和帐户密钥
在 Android 设备上部署和运行
如果没有 Azure 订阅 ,请在开始之前创建一个 Azure 免费帐户 。
先决条件
若要完成本快速入门,请确保具备以下项:
具有 Android Studio 3.4+ 的 Windows 或 macOS 计算机。
如果在 Windows 上运行,则还需要 Git for Windows 和 Git LFS 。
如果在 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 Tools。
支持开发人员 和 ARCore 功能 的 Android 设备。
你的计算机可能需要其他设备驱动程序才能与 Android 设备通信。 有关其他信息和说明,请参阅此处 。
你的应用必须以 ARCore 1.11.0 为目标。
创建空间定位点资源
转到 Azure 门户 。
在左窗格中,选择“创建资源”。
使用搜索框以搜索“空间定位点”。
选择“空间定位点”,然后选择“创建” 。
在“空间定位点帐户”窗格中,执行以下操作:
创建资源后,Azure 门户显示部署已完成。
选择“转到资源”。 你现在可以查看资源属性。
将资源的“帐户 ID”值复制到文本编辑器中,供稍后使用。
另外,将资源的“帐户域”值复制到文本编辑器中,供稍后使用。
在“设置”下,选择“访问密钥” 。 将“帐户密钥”的“主密钥”值复制到文本编辑器中,供稍后使用 。
首先为 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
将资源的“帐户 ID”值和资源的“帐户域”值复制到文本编辑器中,供稍后使用 。
运行 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 aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e
运行 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
将属性的 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/
的项目。
下一步是将应用程序配置为使用帐户标识符和帐户密钥。 在设置空间定位点资源 时,将它们复制到文本编辑器中。
打开 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” 以确认,然后选择“删除” 。
后续步骤
在本快速入门中,你已创建空间定位点帐户。 然后,你配置并部署了应用来保存和重新调用空间定位点。 要详细了解如何改进应用使其可以与其他设备共享空间定位点,请继续学习下一个教程。