Expo大作战(三十五)--expo sdk api之Location!
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网
我猜去全部机翻+个人修改补充+demo测试的形式,对expo进行一次大补血!欢迎加入expo兴趣学习交流群:597732981
【之前我写过一些列关于expo和rn入门配置的东i西,大家可以点击这里查看:从零学习rn开发】
相关文章:
Expo大作战(一)--什么是expo,如何安装expo clinet和xde,xde如何使用
Expo大作战(二)--expo的生命周期,expo社区交流方式,expo学习必备资源,开发使用expo时关注的一些问题
Expo大作战(三)--针对已经开发过react native项目开发人员有针对性的介绍了expo,expo的局限性,开发时项目选型注意点等
Expo大作战(四)--快速用expo构建一个app,expo中的关键术语
Expo大作战(五)--expo中app.json 文件的配置信息
Expo大作战(六)--expo开发模式,expo中exp命令行工具,expo中如何查看日志log,expo中的调试方式
Expo大作战(七)--expo如何使用Genymotion模拟器
Expo大作战(八)--expo中的publish以及expo中的link,对link这块东西没有详细看,大家可以来和我交流
写在二十三章以后的话,之前的翻译,不管如何,好与不好,终究是告一段落,也把expo基础理论的东西又深入的理解了一遍,后续expo大作战系列将主要介绍expo sdk的api。
位置Location
该模块允许从设备读取地理位置信息。 您的应用可以轮询当前位置或订阅位置更新事件。
在尝试获取之前,您必须先获得访问用户位置的权限。 为此,您需要使用Permissions API。 在下面的例子中你可以看到这一点。
Expo.Location.getCurrentPositionAsync(options)
获取设备的当前位置。
参数
option(object) -
选项图:
- enableHighAccuracy(boolean) - 是否启用高精度模式。对于低精度的实施可以避免消耗大量功率的地理位置提供商(如GPS)。
- maximumAge(数字) - (仅限Android)。如果指定,则允许以毫秒为单位返回先前缓存的最旧位置。如果未指定,则始终获取新位置。在iOS上,此选项将被忽略,并且总是返回新的位置。
返回
返回包含以下字段的对象:
coords(对象) - 位置的坐标,包含以下字段:
- latitude (number) - 以度为单位的纬度。
- longitude (number) - 以度为单位的经度。
- altitude (number) - WGS 84参考椭球面以上的高度(米)。
- accuracy (number) - 位置的不确定性半径,以米为单位。
- altitudeAccuracy(number) - 海拔高度值的准确度,单位为米(仅限iOS)。
- heading (number)) - 此设备的水平行进方向,以度为单位开始测量,以正北为单位并沿指南针顺时针方向继续。因此,北部是0度,东部是90度,南部是180度,依此类推。
- speed (number) - 设备的瞬时速度,单位为米/秒。
timestamp (number) - 获取此位置信息的时间,以时间为单位,以毫秒为单位。
Expo.Location.watchPositionAsync(options, callback)
从设备订阅位置更新。请注意,更新只会在应用程序处于前台时发生。背景位置跟踪计划中,但尚未实施。
参数
options(object) -
选项图:
- enableHighAccuracy(boolean) - 是否启用高精度模式。对于低精度的实施可以避免消耗大量功率的地理位置提供商(如GPS)。
- timeInterval(number) - 每次更新之间以毫秒为单位等待的最短时间。
- distanceInterval(number) - 仅当位置以米为单位改变至少该距离时才接收更新。
callback(function) -
每个位置更新都会调用此函数。它只传递一个参数:包含以下字段的对象:
coords(对象) - 位置的坐标,包含以下字段:
- latitude (number) - 以度为单位的纬度。
- longitude (number) - 以度为单位的经度。
- altitude (number) - WGS 84参考椭球面以上的高度(米)。
- accuracy (number) - 位置的不确定性半径,以米为单位。
- altitudeAccuracy(number) - 海拔高度值的准确度,单位为米(仅限iOS)。
- heading (number)) - 此设备的水平行进方向,以度为单位开始测量,以正北为单位并沿指南针顺时针方向继续。因此,北部是0度,东部是90度,南部是180度,依此类推。
- speed (number) - 设备的瞬时速度,单位为米/秒。
timespan(number) - 获取此位置信息的时间,以时间为单位,以毫秒为单位。
返回返回具有一个字段的订阅对象:
- remove(function) - 不带任何参数调用此函数来删除此订阅。该回调将不再被称为位置更新。
Expo.Location.getProviderStatusAsync()
检查位置提供者的状态。返回
返回包含以下字段的对象:
- locationServicesEnabled(boolean) - 是否启用位置服务。
- gpsAvailable(boolean)(仅限android) - 如果GPS提供者可用,如果是,则位置数据将来自GPS。
- networkAvailable(boolean)(仅限android) - 如果网络提供者可用,如果是,则位置数据将来自蜂窝网络。
- passiveAvailable(boolean)(仅限android) - 如果被动提供者可用,如果是,则位置数据将被动地确定。
Expo.Location.getHeadingAsync()
从设备获取当前的朝向信息
参数
没有
返回
对象:
- magHeading(数字) - 以度为单位的磁北测量
- trueHeading(number) - 衡量真正的北方度(需要位置权限,如果没有给出则返回-1)
- 准确度(数字) - 指南针的校准程度。
- 3:高精度,2:中等精度,1:低精度,0:无
- IOS参考:3:<20度不确定度,2:<35度,1:<50度,0:> 50度
Expo.Location.watchHeadingAsync(callback)
指定从设备指南针更新
参数
callback(function) -
每个指南针更新都会调用该函数。它只传递一个参数:包含以下字段的对象:
- magHeading(数字) - 以度为单位的磁北测量
- trueHeading(number) - 衡量真正的北方度(需要位置权限,如果没有给出则返回-1)
- accuracy (number) - 指南针的校准程度。
- 3:高精度,2:中等精度,1:低精度,0:无
- iOS参考:3:<20度不确定度,2:<35度,1:<50度,0:> 50度
返回
返回具有一个字段的订阅对象:
remove(function) - 不带任何参数调用此函数来删除此订阅。该回调将不再被称为位置更新。
Expo.Location.geocodeAsync(address)
将地址字符串编码到经纬度位置。
注意:地理编码消耗资源,必须合理使用。一次创建太多请求可能会导致错误,因此必须对其进行正确管理。
在Android上,您必须在使用地理编码之前向用户请求位置权限(Expo.Permissions.LOCATION)。
参数adress(string) - 表示地址的字符串,例如。 “贝克街伦敦”(address (string) — A string representing address, eg. “Baker Street London”)
返回返回经过地理编码的位置对象的数组(大多数情况下其大小为1),并包含以下字段:
latitude (number) - 以度为单位的纬度。
longitude (number) - 以度为单位的经度。
altitude (number) - WGS 84参考椭球面以上的高度(米)。
accuracy (number) - 位置的不确定性半径,以米为单位。
Expo.Location.reverseGeocodeAsync(location)
将地址解析为邮政地址。
注意:地理编码消耗资源,必须合理使用。一次创建太多请求可能会导致错误,因此必须对其进行正确管理。
在Android上,您必须在使用地理编码之前向用户请求位置权限(Expo.Permissions.LOCATION)。
参数location(object)- 表示位置的对象:
- latitude (number) - 反转地理代码的位置的纬度,以度为单位。
- longitude (number) - 反转地理代码的位置的经度,以度为单位。
返回
返回包含以下字段的地址对象的数组(大多数情况下其大小为1):
- city (string) 城市(字符串) - 地址的城市名称。
- street (string) 街道(字符串) - 地址的街道名称。
- region (string) 区域(字符串) - 地址的区域/区域名称。
- postalCode (string) 邮政编码(字符串) - 地址的邮政编码。
- country (string) 国家(字符串) - 地址的国家/地区名称。
- name (string) 名称(字符串) - 地址的名称,例如“塔桥”。
Expo.Location.setApiKey(apiKey)
设置Google API密钥以使用地理编码API。此方法对于没有Google Play服务的Android设备非常有用,因此无需Geocoder服务。使用Google的API设置密钥之后就可以了。
参数
apiKey(string) - 从Google开发者网站收集的API密钥。
下一张继续介绍,这一篇主要介绍了:expo sdk api之Location!,欢迎大家关注我的微信公众号,这篇文章是否被大家认可,我的衡量标准就是公众号粉丝增长人数。欢迎大家转载,但必须保留本人博客链接!
Expo大作战(三十五)--expo sdk api之Location!的更多相关文章
- Expo大作战(三十九)--expo sdk api之 DocumentPicker,Contacts(获取手机联系人信息),Branch
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...
- Expo大作战(三十八)--expo sdk api之 FileSystem(文件操作系统)
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...
- Expo大作战(三十六)--expo sdk api之 ImagePicker,ImageManipulator,Camera
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...
- Expo大作战(三十四)--expo sdk api之LinearGradient(线性渐变),KeepAwake(保持屏幕不休眠),IntentLauncherAndroid,Gyroscope,
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...
- Expo大作战(三十二)--expo sdk api之Noifications
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...
- Expo大作战(二十五)--expo sdk api之Admob
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...
- Expo大作战(三十)--expo sdk api之Permissions(权限管理模块),Pedometer(计步器api)
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...
- Expo大作战(二十九)--expo sdk api之registerRootComponent(注册跟组件),ScreenOrientation(屏幕切换),SecureStore,
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...
- Expo大作战(二十八)--expo sdk api之Speach(语音文字转换),Segment
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...
随机推荐
- LeetCode:110_Balanced Binary Tree | 平衡二叉树 | Easy
要求:判断一棵树是否是平衡二叉树 Given a binary tree, determine if it is height-balanced. For . 代码如下: struct TreeNod ...
- vuex的module的简单实用方法
当我们的项目越来越大的时候,我们就开始使用vuex来管理我们的项目的状态.但是如果vuex的状态多了呢,这个时候module就登场了.看了一下官方的文档,很详细,但是没有demo让初学者很头疼.那我就 ...
- dart之旅(二)- 内建类型
目录 number 类型 字符串 布尔类型 像大多数语言一样,dart 也提供了 number,string,boolean 等类型,包括以下几种: numbers strings booleans ...
- IDA远程调试 在内存中dump Dex文件
1. 首先使用调试JNI_OnLoad函数的方法,先将apk以调试状态挂起,使用IDA附加上去. 2. 然后在libdvm.so中的dvmDexFileOpenPartial函数上下一个断点 3. 然 ...
- 从零开始学 Web 之 jQuery(二)获取和操作元素的属性
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- 细说spring事务配置属性
一.spring事务配置 1.spring配置 在配置数据源的下方配置 <!-- 事务配置 --> <bean id="transactionManager" c ...
- Spring Boot + Spring Cloud 实现权限管理系统 后端篇(十七):登录验证码实现(Captcha)
登录验证码 登录验证是一般系统都会有的功能,验证的方式也多种多样,比如输入式验证码,拖动式验证条,拖动式验证拼图等等. 我们这里先实现常规的输入验证码的方式,右边显示验证码图片,点击可刷新,左边输入验 ...
- 使用InstallUtil发布windows服务
发布Windows Service的方法 1. 在默认窗口Service1中右键Add Install,自动生成两个类. 2. 修改serviceInstaller1的属性: a)ServiceNa ...
- web模拟终端博客系统
本文由QQ音乐前端团队发表 前段时间做了一个非常有意思的模拟终端的展示页:http://ursb.me/terminal/(没有做移动端适配,请在PC端访问),这个页面非常有意思,它可以作为个人博客系 ...
- 由浅入深:CNN中卷积层与转置卷积层的关系
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由forrestlin发表于云+社区专栏 导语:转置卷积层(Transpose Convolution Layer)又称反卷积层或分数卷 ...