现在有个需求:每隔一段时间需向后台服务器返回当前用户的经纬度坐标.

ionic 官方提供的有定位插件cordova-plugin-geolocation,兼容ios和android版本,网上查资料说最新版的插件已经删除掉的Android版定位的代码,改为基于系统浏览器(chrome内核)进行定位。至于为什么这样做,也有人问过同样的问题,作者的回答是这样比原生定位更快更准确。经过调试,成功过,但是一段时间后就不能用了,提示信息主要就是说不能使用http的协议(非安全的协议),还有一部分人说是因为国内网络的问题,这个问题估计也是个原因吧...

于是乎去网上找适合安卓使用的定位插件: Cordova/ionic 百度定位Android版插件

  1. 首先申请百度地图android版sdk的appkey,需要用到安卓签名证书的sha1值+应用的包名(不清楚的同学百度ionic 安卓签名和ionic 包名,必须打包成release版,并对其进行签名在测试机上测试)
  2. 下载插件
    ionic cordova plugin add https://github.com/mrwutong/cordova-qdc-baidu-location --variable API_KEY="你的ak码"
  3. 具体的使用可以查看官方插件仓库
  4. 调试:必须打包成release版,并对其进行签名在测试机上测试

使用中遇到的问题:

  1. ReferenceError: baidu_location is not defined, 解决办法: 在使用之前 declare var baidu_location: any; 引入 baidu_location,详情请去网上搜索ionic 如何引入自定义的插件

  2. 获取坐标为5e-324, 解决办法:查看返回的locType是否为505(申请的appkey不合法或者没有对app进行签名),具体的定位返回错误码:Android 定位SDK定位 返回错误码

  3. 设备没有获取位置的权限, 解决办法:官方提供"ionic-native/android-permissions"插件,具体使用办法查看官方文档 Android Permissions

ionic 3 安卓手机获取经纬度坐标的更多相关文章

  1. 利用百度地图API,获取经纬度坐标

    利用百度地图API,获取经纬度坐标 代码很简单,但在网上没找到现成的获取地图经纬度的页面. 就是想,给当前页面传递一个经纬度,自动定位到此经纬度.然后可以重新选择,选择完返回经纬度. 效果如下: 源代 ...

  2. php项目有负载,$_SERVER['HTTP_X_FORWARDED_FOR']函数在不同系统中获取到的值形式不一样,ios系统苹果手机只能获取到一个ip(113.87.214.xxx),而安卓手机获取到的是2个ip中间逗号隔开的形式(113.87.214.xxx , xxx.xxx.xxx.xxx)

    这次由于有个抽奖活动功能,苹果手机每次都抽奖失败,安卓手机每次都抽奖失败(5台ios手机,8台Android手机). 错误日志查看是因为,抽奖用户的ip记录进数据库时出错,之前都是拿到ip直接插入数据 ...

  3. 安卓手机获取IP地址

    public class IpGetUtil { public static String getIPAddress(Context context) { NetworkInfo info = ((C ...

  4. MacOS下Terminal获取GPS经纬度坐标

    通过命令行直接获取经纬度坐标MacOS 首先下载WhereAmI,最新版本: https://github.com/robmathers/WhereAmI/releases/download/v1.1 ...

  5. C# JackLib系列之如何获取地球上两经纬度坐标点间的距离

    获取地球上两经纬度坐标点间的距离,利用[大圆距离公式]   A diagram illustrating great-circle distance (drawn in red) between tw ...

  6. 【转】android 安卓APP获取手机设备信息和手机号码的代码示例

    http://blog.csdn.net/changemyself/article/details/7421476 下面我从安卓开发的角度,简单写一下如何获取手机设备信息和手机号码 准备条件:一部安卓 ...

  7. Android GPS获取当前经纬度坐标

    APP中可能会遇到一种需求,就是将当前所在位置的坐标传到server上,今天我提供三种途径去获取经纬度坐标信息,第一种是通过Android API来实现,另外一种通过百度地图API来实现,第三种通过天 ...

  8. 使用html5获取当前手机的经纬度,并接入百度地图API,查询出当前位置

    最近项目需要,稍微研究一下html5获取当前地理位置的问题. 获取当前位置的经纬度很简单,一句代码就搞定 navigator.geolocation.getCurrentPosition(functi ...

  9. error while obtaining ui hierarchy xml file...用 uiautomatorviewer 获取安卓手机软件页面时报错

    Error while obtaining UI hierarchy XML file: com.android.ddmlib.SyncException: Remote object doesn't ...

随机推荐

  1. vc++基础班[24]---系统各种路径信息的获取

    vc++基础班[24]---系统各种路径信息的获取 ------------------------------------------ Begin ------------------------- ...

  2. jquery $.trim()去除字符串空格

    语法jQuery.trim()函数用于去除字符串两端的空白字符. 作用该函数可以去除字符串开始和末尾两端的空白字符(直到遇到第一个非空白字符串为止).它会清除包括换行符.空格.制表符等常见的空白字符. ...

  3. 004_strace工具

    strace - trace system calls and signals 一.strace工具详解 之前线上主机上8351 进程夯死导致无法获悉进程信息,监控程序使用ps 命令查看进程信息至/p ...

  4. 解决mysql 主从数据库同步不一致的方法

    接着上文 配置完Mysql 主从之后,在使用中可能会出现主从同步失败的情况. mysql> show slave status\G Slave_IO_Running: Yes Slave_SQL ...

  5. 51Nod--1384全排列

    1384 全排列 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注 给出一个字符串S(可能又重复的字符),按照字典序从小到大,输出S包括的字符组成的所有排列.例 ...

  6. List集合三种遍历方法

    List<String> list = new ArrayList<String>();list.add("aaa");list.add("bbb ...

  7. xampp 搭建好本地服务器以后手机无法访问

    转载地址:https://blog.csdn.net/weixin_35773751/article/details/80076492 解决办法: 1.将网络连接修改为工作网络,然后关闭工作局域网的防 ...

  8. 【进阶1-2期】JavaScript深入之执行上下文栈和变量对象(转)

    这是我在公众号(高级前端进阶)看到的文章,现在做笔记 https://mp.weixin.qq.com/s/hZIpnkKqdQgQnK1BcrH6Nw 阅读笔记 JS是单线程的语言,执行顺序肯定是顺 ...

  9. python HTML报告

    http://www.cnblogs.com/puresoul/p/7490737.html # coding:utf-8import timeimport unittestimport HTMLTe ...

  10. HTML中特殊符号的处理

    一.写在前面 今天在写页面时记不清大/小于符号该怎么写,于是就想着整理一下方便后面用到! 二.HTML中常用特殊符号的处理    <    <   小于号或显示标记        > ...