热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

简单的路径规划案例分享

本文纲要我的项目背景集成筹备次要代码成绩展现一、本我的项目用到的性能点:地图服务(MapKit)给您提供一套地图开发调用的SDK,地图数据笼罩超过200个国家和地区,反对数百种语言
文章目录[隐藏]
  • 本文纲要
  • 一、 本我的项目用到的性能点:
  • 二、 集成筹备
  • 四、 我的项目成绩展现

本文纲要

  1. 我的项目背景
  1. 集成筹备
  1. 次要代码
  1. 成绩展现

一、 本我的项目用到的性能点:

  地图服务(Map Kit)给您提供一套地图开发调用的SDK,地图数据笼罩超过200个国家和地区,反对数百种语言,不便您轻松地在利用中集成地图相干的性能,全方位晋升用户体验。

  关键字搜寻:通过指定的关键字和可选的天文范畴,查问诸如旅游景点、企业和学校之类的地点。

  门路布局: 是一套以HTTPS模式提供的步行、骑行、驾车门路布局以及行驶间隔计算接口,通过JSON格局返回门路查问数据,提供门路布局能力。

二、 集成筹备

  1. AGC账号注册,我的项目创立

(1)注册成为开发者

注册地址:

https://developer.huawei.com/consumer/cn/service/josp/agc/index.html?ha_source=hms1

(2)创立利用,增加sha256,开启map/site开关,下载json文件

  1. 集成Map + Site SDK

(1)将“agconnect-services.json”文件拷贝到利用级根目录下

  • 在“allprojects > repositories”中配置HMS Core SDK的Maven仓地址。
  • 在“buildscript > repositories”中配置HMS Core SDK的Maven仓地址。
  • 果App中增加了“agconnect-services.json”文件则须要在“buildscript > dependencies”中减少agcp配置。
buildscript {
     repositories {
         maven { url 'https://developer.huawei.com/repo/' }
         google()
         jcenter()
     }
     dependencies {
         classpath 'com.android.tools.build:gradle:3.3.2'
         classpath 'com.huawei.agconnect:agcp:1.3.1.300'
     }
 }
 
 allprojects {
     repositories {
         maven { url 'https://developer.huawei.com/repo/' }
         google()
         jcenter()
     }
 }

(2)在“dependencies ”中增加如下编译依赖

dependencies {
     implementation 'com.huawei.hms:maps:{version}'
     implementation 'com.huawei.hms:site:{version}'
 }

(3)在文件头增加配置

apply plugin: 'com.huawei.agconnect'

(4)在android中配置签名。将生成签名证书指纹生成的签名文件复制到您工程的app目录下,并在“build.gradle”文件中配置签名。

signingConfigs {
    release {
        // 签名证书
            storeFile file("**.**")
            // 密钥库口令
            storePassword "******"
            // 别名
            keyAlias "******"
            // 密钥口令
            keyPassword "******"
            v2SigningEnabled true
        v2SigningEnabled true
    }
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        debuggable true
    }
    debug {
        debuggable true
    }
}

三、 我的项目中用到的次要代码及性能

  1. 文本搜寻:通过实现Site Kit中的textSearch性能实现文本内容搜寻并展现进去。
SearchResultListener resultListener = new SearchResultListener() {
     // Return search results upon a successful search.
     @Override
     public void onSearchResult(TextSearchResponse results) {
         List siteList;
         if (results == null || results.getTotalCount() <= 0 || (siteList = results.getSites()) == null
                 || siteList.size() <= 0) {
             resultTextView.setText("Result is Empty!");
             return;
         }
 
         mFirstAdapter.refresh(siteList);
 
         StringBuilder respOnse= new StringBuilder("\n");
         response.append("success\n");
         int count = 1;
         AddressDetail addressDetail;
         Coordinate location;
         Poi poi;
         CoordinateBounds viewport;
         for (Site site : siteList) {
             addressDetail = site.getAddress();
             location = site.getLocation();
             poi = site.getPoi();
             viewport = site.getViewport();
             response.append(String.format(
                     "[%s] siteId: &#039;%s&#039;, name: %s, formatAddress: %s, country: %s, countryCode: %s, location: %s, poiTypes: %s, viewport is %s \n\n",
                     "" + (count++), site.getSiteId(), site.getName(), site.getFormatAddress(),
                     (addressDetail == null ? "" : addressDetail.getCountry()),
                     (addressDetail == null ? "" : addressDetail.getCountryCode()),
                     (location == null ? "" : (location.getLat() + "," + location.getLng())),
                     (poi == null ? "" : Arrays.toString(poi.getPoiTypes())),
                     (viewport == null ? "" : viewport.getNortheast() + "," + viewport.getSouthwest())));
         }
         resultTextView.setText(response.toString());
         Log.d(TAG, "onTextSearchResult: " + response.toString());
     }
 
     // Return the result code and description upon a search exception.
     @Override
     public void onSearchError(SearchStatus status) {
         resultTextView.setText("Error : " + status.getErrorCode() + " " + status.getErrorMessage());
     }
 };
 // Call the place search API.
 searchService.textSearch(request, resultListener);
  1. 步行门路布局:通过调用Map Kit 中的API接口实现数据回调并出现在地图上。点击可获取API文档。
NetworkRequestManager.getWalkingRoutePlanningResult(latLng1, latLng2,
        new NetworkRequestManager.OnNetworkListener() {
            @Override
            public void requestSuccess(String result) {
                generateRoute(result);
            }

            @Override
            public void requestFail(String errorMsg) {
                Message msg = Message.obtain();
                Bundle bundle = new Bundle();
                bundle.putString("errorMsg", errorMsg);
                msg.what = 1;
                msg.setData(bundle);
                mHandler.sendMessage(msg);
            }
        });

四、 我的项目成绩展现

欲了解更多详情,请参阅:
华为开发者联盟官网:https://developer.huawei.com/consumer/cn/hms?ha_source=hms1
获取开发领导文档:https://developer.huawei.com/consumer/cn/doc/development?ha_source=hms1
参加开发者探讨请到Reddit社区:https://www.reddit.com/r/HuaweiDevelopers/
下载demo和示例代码请到Github:https://github.com/HMS-Core
解决集成问题请到Stack Overflow:https://stackoverflow.com/questions/tagged/huawei-mobile-services?tab=Newest

原文链接:
https://developer.huawei.com/consumer/cn/forum/topic/0202436666167160224?fid=18
作者:胡椒



推荐阅读
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • MACElasticsearch安装步骤及验证方法
    本文介绍了MACElasticsearch的安装步骤,包括下载ZIP文件、解压到安装目录、启动服务,并提供了验证启动是否成功的方法。同时,还介绍了安装elasticsearch-head插件的方法,以便于进行查询操作。 ... [详细]
  • Google Play推出全新的应用内评价API,帮助开发者获取更多优质用户反馈。用户每天在Google Play上发表数百万条评论,这有助于开发者了解用户喜好和改进需求。开发者可以选择在适当的时间请求用户撰写评论,以获得全面而有用的反馈。全新应用内评价功能让用户无需返回应用详情页面即可发表评论,提升用户体验。 ... [详细]
  • 2018年人工智能大数据的爆发,学Java还是Python?
    本文介绍了2018年人工智能大数据的爆发以及学习Java和Python的相关知识。在人工智能和大数据时代,Java和Python这两门编程语言都很优秀且火爆。选择学习哪门语言要根据个人兴趣爱好来决定。Python是一门拥有简洁语法的高级编程语言,容易上手。其特色之一是强制使用空白符作为语句缩进,使得新手可以快速上手。目前,Python在人工智能领域有着广泛的应用。如果对Java、Python或大数据感兴趣,欢迎加入qq群458345782。 ... [详细]
  • Monkey《大话移动——Android与iOS应用测试指南》的预购信息发布啦!
    Monkey《大话移动——Android与iOS应用测试指南》的预购信息已经发布,可以在京东和当当网进行预购。感谢几位大牛给出的书评,并呼吁大家的支持。明天京东的链接也将发布。 ... [详细]
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • 本文介绍了在Python3中如何使用选择文件对话框的格式打开和保存图片的方法。通过使用tkinter库中的filedialog模块的asksaveasfilename和askopenfilename函数,可以方便地选择要打开或保存的图片文件,并进行相关操作。具体的代码示例和操作步骤也被提供。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • 本文介绍了使用Java实现大数乘法的分治算法,包括输入数据的处理、普通大数乘法的结果和Karatsuba大数乘法的结果。通过改变long类型可以适应不同范围的大数乘法计算。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • 解决VS写C#项目导入MySQL数据源报错“You have a usable connection already”问题的正确方法
    本文介绍了在VS写C#项目导入MySQL数据源时出现报错“You have a usable connection already”的问题,并给出了正确的解决方法。详细描述了问题的出现情况和报错信息,并提供了解决该问题的步骤和注意事项。 ... [详细]
  • 本文介绍了RxJava在Android开发中的广泛应用以及其在事件总线(Event Bus)实现中的使用方法。RxJava是一种基于观察者模式的异步java库,可以提高开发效率、降低维护成本。通过RxJava,开发者可以实现事件的异步处理和链式操作。对于已经具备RxJava基础的开发者来说,本文将详细介绍如何利用RxJava实现事件总线,并提供了使用建议。 ... [详细]
  • Java和JavaScript是什么关系?java跟javaScript都是编程语言,只是java跟javaScript没有什么太大关系,一个是脚本语言(前端语言),一个是面向对象 ... [详细]
  • 如何实现JDK版本的切换功能,解决开发环境冲突问题
    本文介绍了在开发过程中遇到JDK版本冲突的情况,以及如何通过修改环境变量实现JDK版本的切换功能,解决开发环境冲突的问题。通过合理的切换环境,可以更好地进行项目开发。同时,提醒读者注意不仅限于1.7和1.8版本的转换,还要适应不同项目和个人开发习惯的需求。 ... [详细]
author-avatar
维生素-熙
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有