白羽
2018-08-13
来源 :网络
阅读 1189
评论 0
摘要:本文将带你了解WEBAPP开发之ionic开发webApp---百度定位,希望本文对大家学WEBAPP有所帮助。
本文将带你了解WEBAPP开发之ionic开发webApp---百度定位,希望本文对大家学WEBAPP有所帮助。
反思
好久没写博客了,最近比较忙,这段时间忙的差不多了,博客一定要坚持写下去。
概述
最近客户提出了新的需求:在客户操作节点增加地图定位,以便获取操作节点时候的地理位置,经过调研发现,官方提供的有个叫cordova-plugin-geolocation的插件,在ios上可以直接使用,但是在天朝因为某些网络原因不能给正常使用,并且在网上很少能够搜索到关于这方面的文章,就去在github上找一些第三方提供的插件去实现。这里记录一下,防止以后走弯路。
1.申请百度的秘钥百度秘钥申请地址
2.安装插件:
ionicpluginaddhttps://github.com/mrwutong/cordova-qdc-baidu-location--variableAPI_KEY="
3.使用方法
在需要获取位置信息的地方直接使用以下代码:
baidu_location.getCurrentPosition(function(message){
console.debug(message);
},function(message){
console.debug(message);
});
第一个函数是成功的回调,第二个是失败的回调。
切记
在安装了插件之后,千万记得要先ionicremoveplatformandroid,然后再执行ionicplatformaddandroid命令,不然插件不能正确的执行,事实上,每一次修改插件的内容,都要执行上面的两个操作,才能使插件正常运行
如果你使用sdk23版本进行打包的,你就要注意了,在最新的android6.0上面,和以前的权限授权机制已经不同,如果使用23版本的进行打包,在android6.0以上的手机上运行不会给出获取地理位置权限的弹窗,务必改为23以下的版本进行编译
获取成功的话,默认是只给出经纬度信息的,如果要获取定位的地址的具体信息,要在插件里面的BaiduLocation.java文件把
option.setIsNeedAddress(false);
改为
option.setIsNeedAddress(true);
默认返回的是一个字符串,对于现在json这么流行的情况下,当然是获得json格式的数据比较让人喜欢,这个时候坐着已经替我们封装好了,只需要在BaiduLocation.java文件中把
PluginResultpluginResult=newPluginResult(PluginResult.Status.OK,sb.toString());
改为
PluginResultpluginResult=newPluginResult(PluginResult.Status.OK,json.toString());,你就可以获得一个json格式的字符串了
最后
上面的内容大多数是在github上找到的,这里只是写上了自己遇到的一些问题,分享出来,这里附上github地址:GitHub地址
本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标移动开发之WebApp频道!
喜欢 | 0
不喜欢 | 0
您输入的评论内容中包含违禁敏感词
我知道了

请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号