1 介绍
Duration: 5:00
总览
旅行者能够使用该应用在华为地图上搜索附近名胜景点、游玩去处或是附近ATM、餐馆和医院等。
服务场景描述
Tourism应用通过集成机器学习服务的地标识别能力,能够提供旅行过程所有必要的信息,还可以识别图片中的地标建筑。当传入图片时,用户可以获取识别出的地标信息以及搜索服务提供的相关图片。相关图片可以通过使用全景服务以全景图片或柱状全景图片形式快速展示。应用使用位置服务向用户展示名胜景点或是打算前去的地点位置。
特性 |
服务 |
华为账号/手机号登录 |
认证服务,账号服务 |
获取定位并展示在地图上 |
定位服务,地图服务 |
位置搜索 |
位置服务 |
加载地标相关图片 |
搜索服务 |
360°全景图片与交互 |
全景服务 |
2 您需要什么
Duration: 1:00
硬件需求
-
一部搭载安卓6或更高版本系统的手机,用于调试应用。
请提前准备上述硬件设备。
软件需求
请提前准备上述软件环境。
3 能力接入准备
Duration: 2:00
首先,您需要在AppGallery Connect上启用HMS Core的相关服务。
启用前,请完成以下准备工作:
-
在AppGallery Connect上创建一个应用。
-
在Android Studio中新建一个项目。
-
生成签名证书。
-
生成签名证书指纹。
-
配置签名证书指纹。
-
添加应用包名并保存配置文件。
-
在项目级build.gradle文件中添加AppGallery Connect插件和Maven仓。
-
在Android Studio中配置签名证书。
详情请参见HUAWEI HMS Core集成准备。
4 开通服务
Duration: 5:00
-
登录AppGallery Connect,点击“项目设置”中“API管理”页签,开通如下服务的API权限。
-
认证服务
-
地图服务
-
定位服务
-
位置服务
-
搜索服务
-
机器学习服务
-
说明:以上API权限默认已开通。如未开通,请手动开通。
2.开启地图服务的额外权限,请参考地图服务(Android)。
服务权限开启完毕后,您可进入下一个开发步骤。
5 配置开发环境
Duration: 3:00
-
点击“agconnect-services.json”下载配置文件。
-
复制agconnect-services.json文件至项目应用级根目录中。
3.打开Android Studio项目中根目录下的“build.gradle”文件。
4.配置如下信息。
buildscript {
repositories {
mavenLocal()
google()
mavenCentral()
maven { url 'https://developer.huawei.com/repo/' }
}
dependencies {
classpath 'com.android.tools.build:gradle:7.2.0'
classpath 'com.huawei.agconnect:agcp:1.6.0.300'
}
}
plugins {
id 'com.android.application' version '7.2.1' apply false
id 'com.android.library' version '7.2.1' apply false
}
task clean(type: Delete) {
delete rootProject.buildDir
}
5. 在settings.gradle文件中配置如下信息。
pluginManagement {
repositories {
gradlePluginPortal()
google()
mavenCentral()
maven { url 'https://developer.huawei.com/repo/' }
}
}
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
maven { url 'https://developer.huawei.com/repo/' }
}
}
rootProject.name = "DiscoverTourismApp"
include ':app'
6.打开应用级目录下的build.gradle文件。
7.在应用级build.gradle文件里添加signing configs和所需的依赖。
apply plugin: 'com.huawei.agconnect'
android {
...
signingConfigs {
release {
storeFile file("xxx.jks")
keyAlias 'xxx'
keyPassword 'xxx'
storePassword 'xxx'
v1SigningEnabled true
v2SigningEnabled true
}
}
defaultConfig {...}
buildTypes {
debug{...}
release{...}
}
}
implementation 'com.huawei.agconnect:agconnect-core:1.6.5.300'
implementation 'com.huawei.agconnect:agconnect-auth:1.6.5.300'
implementation 'com.huawei.hms:hwid:6.4.0.301'
implementation 'com.huawei.hms:site:4.0.3.300'
implementation 'com.huawei.hms:maps:5.0.3.302'
implementation 'com.huawei.hms:location:5.0.4.300'
implementation 'com.huawei.hms:ml-computer-vision-segmentation:2.2.0.300'
implementation 'com.huawei.hms:searchkit:5.0.4.303'
implementation 'com.huawei.hms:panorama:5.0.2.306'
implementation 'com.huawei.hms:panorama-local:5.0.2.306'
8.在AndroidManifest.xml文件里添加所需权限。
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="com.huawei.permission.SECURITY_DIAGNOSE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-p