简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话很少说,接下来你看到内容,讲所有来与官网html
我猜去所有机翻+我的修改补充+demo测试的形式,对expo进行一次大补血!欢迎加入expo兴趣学习交流群:597732981react
【以前我写过一些列关于expo和rn入门配置的东i西,你们能够点击这里查看:从零学习rn开发】ios
相关文章:json
Expo大做战(一)--什么是expo,如何安装expo clinet和xde,xde如何使用api
Expo大做战(二)--expo的生命周期,expo社区交流方式,expo学习必备资源,开发使用expo时关注的一些问题promise
Expo大做战(三)--针对已经开发过react native项目开发人员有针对性的介绍了expo,expo的局限性,开发时项目选型注意点等bash
Expo大做战(四)--快速用expo构建一个app,expo中的关键术语微信
Expo大做战(五)--expo中app.json 文件的配置信息app
Expo大做战(六)--expo开发模式,expo中exp命令行工具,expo中如何查看日志log,expo中的调试方式less
Expo大做战(七)--expo如何使用Genymotion模拟器
Expo大做战(八)--expo中的publish以及expo中的link,对link这块东西没有详细看,你们能够来和我交流
写在二十三章之后的话,以前的翻译,无论如何,好与很差,终究是告一段落,也把expo基础理论的东西又深刻的理解了一遍,后续expo大做战系列将主要介绍expo sdk的api。
当添加可访问用户设备上潜在敏感信息的功能(例如其位置)时,或可能向其发送可能不须要的推送通知时,您须要首先询问用户的许可。 除非你已经征求他们的许可,不然不须要(Unless you’ve already asked their permission, then no need)。 因此咱们有权限模块。
若是您正在将应用程序部署到Apple iTunes Store,则应考虑向应用程序添加其余元数据,以便自定义系统权限对话框并解释您的应用程序须要权限的缘由。 请参阅App Store部署指南中的更多信息。
肯定您的应用是否已被授予对提供的权限类型的访问权限。
type(string) - 权限的名称。
返回使用关于权限的信息解决的Promise,包括状态,到期和范围(若是它适用于权限类型)。(Returns a Promise
that is resolved with the information about the permission, including status, expiration and scope (if it applies to the permission type).)
async function alertIfRemoteNotificationsDisabledAsync() {
const { Permissions } = Expo;
const { status } = await Permissions.getAsync(Permissions.NOTIFICATIONS);
if (status !== 'granted') {
alert('Hey! You might want to enable notifications for my app, they are good.');
}
}复制代码
提示用户得到许可。 若是他们已经授予访问权限,则回应将成功。
type(string) - 权限的名称。
返回使用关于权限的信息解决的Promise,包括状态,到期和范围(若是它适用于权限类型)。
async function getLocationAsync() {
const { Location, Permissions } = Expo;
const { status } = await Permissions.askAsync(Permissions.LOCATION);
if (status === 'granted') {
return Location.getCurrentPositionAsync({enableHighAccuracy: true});
} else {
throw new Error('Location permission not granted');
}
}复制代码
本地和推送通知的权限类型。
注意:在iOS上,这不会消除未肯定 拒绝,所以只会返回已授予或未肯定。 这是因为底层本机API的实现方式所致。
Expo.Permissions.LOCATION
位置访问权限类型。
Expo.Permissions.CAMERA
照片和视频拍摄的许可类型。
Expo.Permissions.AUDIO_RECORDING
音频录制的许可类型。
Expo.Permissions.CONTACTS
阅读联系人的权限类型。
Expo.Permissions.CAMERA_ROLL
用于读取或写入相机的许可类型。
使用Core Motion(iOS)或Google Fit(Android)获取用户的步数。
Expo.Pedometer.isAvailableAsync()
肯定计步器是否可用。
返回一个可解析为布尔值的承诺,指示计步器是否在此设备上可用。
获取两个日期之间的步数。
start(datetime) - 指示测量步骤的范围开始的日期。
end(end) - 指示测量步骤的范围结束的日期。
返回一个使用steps键解析为Object的promise,它是一个Number,表示在给定日期之间所采用的步数。
Expo.Pedometer.watchStepCount(callback)
订阅计步器更新。
回调函数(callback)当新的步数数据可用时调用的回调函数。 该回调提供了一个单个参数,该参数是具备步骤键的对象。
一个EventSubscription对象,当您想要取消订阅侦听器时,您能够调用remove()。
下一张继续介绍,这一篇主要介绍了:expo sdk api之Permissions(权限管理模块)
,