1、yarn add react-native-amap-geolocation

2、app>src>app>AndroidManifest.xml 加入权限配置

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

3、app>src>app>AndroidManifest.xml 加入高德android key 。key通过高德控制台 申请。

<meta-data android:name="com.amap.api.v2.apikey" android:value="key" >//开发者申请的key </meta-data>

4、封装Geo.js

import {PermissionsAndroid, Platform} from 'react-native';
import {init, Geolocation} from 'react-native-amap-geolocation';
import axios from 'axios';class Geo {async getCityByLocation() {await init({android: 'a35c88dacc759640fd43415f690b1931',  //加入android key      });// 获得经纬度const {longitude, latitude} = await this.getCurrentPosition();console.log(longitude);console.log(latitude);const res = await axios.get('https://restapi.amap.com/v3/geocode/regeo', {params: {location: `${longitude},${latitude}`,key: '043455fa3a057205e234345c0f58b09c',  //加入 web服务key},});return Promise.resolve(res.data);}
}export default new Geo();

5、调用

import React, {Component} from 'react';
import {StyleSheet, Text, View} from 'react-native';
import  Geo  from '~/utils/geo'export default class TestGeo extends Component {state = {longitude: '',//经度latitude: '',//纬度city: '',district: '',street: '',position: '',//位置名称geoinit: false,isInitGeo: false};getGeo= async () => {let data =  await Geo.getCityByLocation();console.log( "data"+ JSON.stringify(data)  );   //数据都在这}UNSAFE_componentWillMount  = () => {this.getGeo();};render() {return (<View style={styles.container}><Text style={styles.instructions}>经度:{this.state.longitude}</Text><Text style={styles.instructions}>纬度:{this.state.latitude}</Text><Text style={styles.instructions}>城市:{this.state.city}</Text><Text style={styles.instructions}>区域:{this.state.district}</Text><Text style={styles.instructions}>街道:{this.state.street}</Text><Text style={styles.instructions}>详细位置:{this.state.position}</Text><Text style={styles.instructions}>初始化完成:{this.state.isInitGeo }</Text></View>);}
}const styles = StyleSheet.create({container: {flex: 1,justifyContent: 'center',alignItems: 'center',backgroundColor: '#F5FCFF',},instructions: {textAlign: 'center',color: '#333333',marginBottom: 5,},
});

react-native 使用高德SDK取得位置信息相关推荐

  1. React Native升级目标SDK

    React Native升级目标SDK 打开在 android/app/的build.gradle 找到 android { } 区块 改变以下属性 compileSdkVersion 26 buil ...

  2. 微信小程序使用高德API获取位置信息

    //调用方法app.getAmapLocation().then((res) => {console.log(res);}); var amapFile = require('static/js ...

  3. React Native Could not expand ZIP错误信息

    https://blog.csdn.net/hunannanhu/article/details/78047713

  4. Pano React Native SDK 来了!快速实现移动端音视频和白板

    前言 React Native 是 Facebook 于2015年4月开源的跨平台移动应用开发框架,支持iOS和安卓两大平台.React Native 着力于提高多平台开发的开发效率 -- Learn ...

  5. React Native 安卓环境搭建

    基础环境 必须安装的依赖有:Node.js.Yarn 和 React Native 脚手架.这是运行 RN 的基础 Node.js Node.js 的版本应大于等于 12,推荐安装 LTS 版本(去N ...

  6. [译]哪个跨平台框架才是最好的选择?React Native、Flutter 还是 Ionic

    关注 前端瓶子君,回复"交流" 加入我们一起学习,天天进步 原文地址:React Native vs. Flutter vs. Ionic 原文作者:Sophia Martin 译 ...

  7. 如何在React Native和Firebase中设置Google登录

    Google sign-in is a great login feature to offer to your app's users. It makes it easier for them to ...

  8. React Native应用实现步骤

    React Native应用实现步骤 在整个应用设计中,始终按照自下而上的原则进行.在大型的项目中,自下而上的设计方式简单,可以并行工作,并且可以在构建的同时写测试用例. React Native设计 ...

  9. React Native 学习资源精选仓库(汇聚知识,分享精华)

    React Native 学习资源精选仓库(汇聚知识,分享精华) <React Native Awesome>这里fork过来的,汇集了各类react-native学习资料.工具.组件.开 ...

最新文章

  1. 钢铁飞龙每个人的机器人_让人震撼的特斯拉超级工厂全自动生产线
  2. 50岁,他希望自己还可以写代码
  3. selenium分布式部署
  4. python中的作用域以及内置函数globals()-全局变量、locals()-局部变量
  5. JS中的加号+运算符详解
  6. VS2012 +PTVS配置
  7. rstudio 保存_Rstudio学习笔记
  8. Java,Steam控制器和我
  9. React开发(193):react无障碍使用程序获取焦点第一种
  10. 【网络流24题】No.7 试题库问题 (最大流,二分图多重匹配)
  11. Linux查看线程的方法小结
  12. pyqtsignal()作用
  13. 计算机屏幕截图按什么键,电脑按什么键自由截图
  14. LeetCode 简单算法题
  15. c语言sizeof用法计算char,C语言里sizeof(char)是什么意思
  16. 再谈中国的收入不平等问题
  17. 优维科技EasyOps®一体化运维平台入选“大信创产品目录”
  18. uni微信小程序引入商圈快速积分插件
  19. 高阶低通滤波算法_高/低算法
  20. matlab的series函数怎么用,series函数

热门文章

  1. 案例研究:中国金融科技50强之“安心de利”风控模式
  2. python高德 查询县_Python和高德开放平台——地名地址空间化及采集POI信息
  3. P13 JPanel 面板
  4. revit插件建模助手的【快速工具箱】功能
  5. word文档插图片后与文字距离很大怎么办
  6. php把buffer转化为图片_长微博生成(将html转化为图片)原理浅析
  7. Ubuntu14.04 64位+Python3.4环境下安装matplotlib的方法
  8. 从欧美到亚洲,2019年全球有多少个软件工程师?
  9. Winform使用DSO Framer控件嵌入office 异常总结及解决方法
  10. win7下通过easyBCD引导安装Ubuntu14.04(补充完善版)