`

APICloud(六):使用aMapLBS进行定位

阅读更多

在APICloud的模块库里边用于定位的地图有很多,如百度、高德,我这里用高德地图进行定位。基本过程如下:

1、在app的模块中添加“aMapLBS”模块

 

2、获取高德地图的 API Key

a、去高德开放平台注册一个开发者账号,链接:http://lbs.amap.com/

b、在高德开放平台中创建一个应用:控制台--->应用管理---->创建新应用,如图:

应用名称随便填一个,应用类型根据app的作用选择一个类型,我这里选“生活” 。

c、添加新Key:选择刚刚创建的应用,点击右侧的“添加新Key”,弹出框如下图:

key名称:根据命名规范命名,最好也根据下APP的名称和作用。

服务平台:根据APP的服务平台写就好,我这里选的Android

发布版安全码SHA1:使用APICloud平台开发的这个很方便,因为APICloud平台已经提供给你了。打开APICloud找到需要添加定位信息的APP,点击左侧的概览,如图:

通过点击“概览”  之后看到的东西比较少,基本上只能看到APP信息。点击右下角的^能看到更全的,像“appKey”、像“Android签名证书SHA1码”、像“Android包名”,这些都是我们需要的好东东。

将APICloud项目概览中的“Android签名证书SHA1码”复制到高德的“发布版安全SHA1”中。

PackageName:获取方法跟获取SHA1码是一样的,将APICloud项目概览中的“Android包名”复制过来就好啦。

d、提交

e、提交成功后,应用下方就会多出一条刚刚创建的Key信息,至此获取API Key完成。

 

3、将 API Key配置到项目的config.xml文件中

<feature name="aMapLBS">
    <param name="android_api_key" value="f7Is0dWLom2q6rV3ZfFPZ1aa"/>
</feature>

注意:一个API key只能对应于一个APP项目,多个APP中使用同一个API key会出现异常。

 

4、页面使用Demo

/**
 *点击“所在位置”所在a标签时触发该事件,该事件用来定位当前所处位置
 * @param obj:点击的A标签
 *  **/
function loadPosition(){
	var aMapLBS = api.require('aMapLBS');//引入模块
	//配置定位信息
	aMapLBS.configManager({
	    accuracy: 'hundredMeters',
	    filter: 1
	}, function(ret, err) {
	    if (ret.status) {	        
			//先取消其他定位
			aMapLBS.stopUpdatingLocation();
			//先定位经纬度
			aMapLBS.singleLocation({
	            timeout: 10
            },function(ret,err){
            	if (ret.status) {
				   //alert(JSON.stringify(ret));
				   //alert("经度:"+ret.lon+"\n纬度:"+ret.lat);
				   	$("#longitude").val(ret.lon);
				   	$("#latitude").val(ret.lat);				   
		   			//直接定位地址
					aMapLBS.singleAddress({
					    timeout: 10
					}, function(ret2, err2) {
					    if (ret2.status) {
					        //alert(JSON.stringify(ret2));//获取所属兴趣点名称
					        var address = ret2.address.AOIName;
					        $("#position").text(ret2.address.AOIName);
					    }
					});	
				}
            });
		
	    }
	});
}

注意:添加新的模块之后,需要自定义loader,不能再使用系统的loader,也不能再使用以前的loader,需要重新编译自定义loader。重新编译并下载安装之后,最好来一次“全量真机同步” 。有时候重编且全量同步之后依旧报错(最近一次使用就是在调用aMapLBS.singleLocation时,ret.status一直是false),可以尝试下云编译(云编译之前记得把所有需要提交的代码都提交)编译完成后看看是否有问题,若没有问题再重新编译自定义loader(这次这个问题就是这么解决的)。

  • 大小: 10.3 KB
  • 大小: 66.3 KB
  • 大小: 24.8 KB
分享到:
评论

相关推荐

    APICloud教程:服务器上的页面执行API

    ### APICloud教程:服务器上的页面执行API #### 背景介绍 APICloud作为一款混合开发平台,为开发者提供了高效便捷的应用开发...希望本文能为正在使用或即将使用APICloud进行应用开发的朋友提供一些有用的参考和启发。

    ApiCloud下:视频播放模块SDK

    这个SDK专为Android Studio设计,便于在apicloud的自定义模块开发中使用。以下将详细介绍APICloud视频播放模块SDK的核心功能、使用方法以及在Android应用开发中的实践。 一、APICloud视频播放模块SDK概述 APICloud...

    APICloud(十三):使用jpush进行消息推送

    这篇博客文章“APICloud(十三):使用jpush进行消息推送”将详细讲解如何在APICloud项目中整合JPush服务,以实现实时、精准的消息推送功能。 首先,我们需要了解JPush的基本概念。JPush是极光公司提供的一个稳定、...

    APICloud开发工具:WebStorm插件

    APICloud是一个强大的移动应用开发平台,它允许开发者使用JavaScript进行跨平台的原生应用开发。WebStorm是一款由JetBrains公司推出的高效JavaScript IDE,专为前端开发者设计,提供了丰富的代码提示、调试、版本...

    APICloud:轻松6步完成App软件开发

    ### APICloud:轻松6步完成App软件开发 随着移动互联网的发展,应用程序(App)已成为人们生活中不可或缺的一部分。然而,对于那些不具备编程技能的人来说,开发一款App似乎是一项难以企及的任务。幸运的是,APICloud...

    vue_apicloud:使用vue和apicloud构建混合应用程序

    使用vue和apicloud可以快速构建一个App。 todo app推送 自动更新(apicloud官方提供了,可以整合使用) 快速开始 # 1. 先检查下 Node.js 是否安装成功 $ node -v v10.0.0 $ npm -v 6.2.0 # 2. 由于众所周知的原因,...

    APICloud-CLI工具使用说明

    APICloud是一款强大的移动应用开发平台,它允许开发者使用JavaScript进行跨平台的原生应用开发。CLI(Command Line Interface)工具是APICloud提供的一种命令行工具,用于简化项目管理和构建流程,提升开发效率。本...

    信息安全_数据安全_APICloud:服务CAF开发者.pdf

    APICloud作为一个专注于国内外移动应用开发平台的公司,通过提供技术产品和服务,形成了中国目前最活跃的开发者生态社区。APICloud的服务对象主要是CAF开发者,即YunOS开发者生态的成员。APICloud不仅提供一站式开发...

    使用apicloud仿每日优鲜源码

    9. **版本控制与发布**:使用Git进行版本控制,进行应用的迭代更新,同时学习APICloud的打包和发布流程,将应用上架到App Store和Google Play。 10. **测试与调试**:进行单元测试、集成测试和系统测试,确保所有...

    apicloud制作一个app

    在本文中,我们将深入探讨如何使用APICloud来制作一个应用程序,以及这个平台为开发者带来的优势和功能。APICloud是一款强大的移动应用开发平台,它允许开发者使用HTML5、JavaScript和CSS等Web技术快速构建原生移动...

    apicloud七天培训课day3代码

    在APICloud七天培训课程的第三天,我们深入学习了如何使用APICloud平台进行移动应用开发,特别是关于代码编写和项目构建的相关知识。APICloud是一个跨平台的移动开发框架,它允许开发者使用JavaScript来构建原生的...

    APICloud(九):上拉加载数据和长按事件

    在IT行业中,APICloud是一个强大的混合移动应用开发平台,它允许开发者使用JavaScript进行原生APP的开发,大大降低了跨平台开发的复杂性。本篇我们将深入探讨如何在APICloud中实现上拉加载数据和长按事件,这两个...

    apicloud模块权限.zip

    1. **APICloud**:APICloud 是一套完整的移动应用开发解决方案,它提供了丰富的API接口,使得开发者可以通过Web技术进行原生应用的开发,降低了跨平台开发的门槛。 2. **模块权限**:在Android和iOS系统中,为了...

    藏经阁-APICloud服务CAF开发者:共筑YunOS开发者生态.pdf

    APICloud认为,IoT设备控制将是未来应用开发的方向,APICloud也在这个方向上进行了相关的研究和开发。 知识点3:APICloud对YunOS应用的开发支持 APICloud提供了对YunOS应用的开发支持,包括云应用开发控制台、应用...

    APP开发工具APICloud Studio的使用说明

    ### APICloud Studio 使用详解 #### 一、概述 APICloud Studio 是一款专为移动应用开发设计的强大集成开发环境(IDE)。它基于 Eclipse 和 Aptana Studio 3 进行扩展开发,集成了多种实用功能,如应用管理、模板框架...

    使用APICloud从0开始写脉脉(四) 再谈顶部导航栏

    本篇文章将继续探讨在使用APICloud进行移动应用开发时,如何从零开始构建一个类似“脉脉”的应用程序,并特别聚焦于顶部导航栏的设计与实现。导航栏作为用户界面的重要组成部分,不仅影响用户体验,还直接关系到应用...

    APICloud IDE开发指南

    ### APICloud IDE 开发指南知识点详解 #### 一、总体介绍与概述 **APICloud IDE**是一款专为移动应用开发设计的集成开发环境(IDE)。它具有以下几个显著特点: - **简单易用**:无需复杂的配置安装过程,直接运行...

    APICloud App定制平台的使用指南

    ### APICloud App定制平台使用指南 #### 一、概述 随着移动互联网的快速发展,越来越多的企业和个人希望通过开发自己的应用程序来拓展业务或者实现创意。然而,对于很多初创企业和传统企业而言,自行组建技术团队...

    使用APICloud混合开发

    APICloud是一款强大的移动应用开发平台,它允许开发者使用JavaScript进行Hybrid App(混合应用)的开发,同时结合原生的iOS和Android功能,实现高效、便捷的跨平台开发。混合开发模式结合了Web开发的灵活性和原生...

Global site tag (gtag.js) - Google Analytics