热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Expo大作战(二十三)expo中expokit高级属性(没干货)

简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网我

技术分享图片

简要:本系列文章讲会对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这块东西没有详细看,大家可以来和我交流

更多>>

接下来就开始撸码


高级ExpoKit主题

本指南更深入地介绍了一些不是很重要的ExpoKit主题,但您可能会遇到困难。如果您对ExpoKit不熟悉,您可能需要先阅读ExpoKit指南。

取消分离(Un-detaching)

例如,如果您想要返回到仅限JS的状态,或者想要为测试目的而重复分离,可以手动“取消”分离项目。由于您的项目不会再被分离,您将不再能够使用自定义本机代码。

警告:以下说明将永久删除项目中的本机iOS和Android代码,包括您所做的任何更改。我们强烈建议您在尝试此操作之前将更改提交到版本控制。

要取消分离的做法:

  • 从你的项目中删除ios和android目录。
  • 删除isDetached并从项目的app.json中分离键。

你现在可以像普通的expo项目一样使用你的项目(没有ExpoKit)。

验证软件包(仅限iOS)(Verifying Bundles (iOS only))

当我们为您的ExpoKit项目提供空中服务(over-the-air)时,我们会包含一个签名,以便您的项目可以验证JS实际上来自我们的服务器。

默认情况下,使用ExpoKit的项目在iOS上禁用此功能并在Android上启用。我们鼓励您在iOS上启用它,以便为您的所有用户验证您的代码。

使用ExpoKit在本地项目中启用代码验证:

  • 满足这两个要求之一(你只需要一个):
    •   配置应用程序时使用非通配符包标识符(推荐)
    •   在Capabilities下的Xcode项目设置中启用Keychain Sharing。 (更快建立)
  • 在ios / your-project / Supporting / EXShell.plist中,将isManifestVerificationBypassed设置为NO(或者完全删除此密钥)。

禁用expo分析(Disabling Expo Analytics)

默认情况下,使用ExpoKit的应用程序将跟踪一些expo特定的使用情况统计。这包括在我们的隐私政策中。您可以按照以下步骤在您的应用中停用Expo分析:

在iOS上,将值EXAnalyticsDisabled添加到应用程序的主Info.plist中,值为YES。

配置JS URL

在开发中,您的ExpoKit项目将从XDE / exp请求您的本地构建。您可以在EXBuildConstants.plist(iOS)或ExponentBuildConstants(Android)中看到此配置。您不需要编辑它,因为它在您提供项目时会自动编写。

在生产环境中,您的ExpoKit项目将要求您发布的JS包。这是在EXShell.plist(iOS)和MainActivity.java(Android)中配置的。如果您想在iOS中指定自定义行为,则还可以设置[ExpoKit sharedInstance] .publishedManifestUrlOverride属性。

在iOS上启用可选展示模块

一些Expo模块不包含在由exp build生成的独立iOS应用程序中。通常这是因为他们向二进制文件添加了不成比例的膨胀量,或者因为它们包含受额外Apple审查指导原则支配的API。现在这些模块是:

  • FaceDetector
  • ARKit
  • Payments

如果你想在你的Expo iOS应用程序中使用这些模块中的任何一个,你需要分离到ExpoKit而不是使用exp build。 (这是我们的改进之路。)在您的ExpoKit项目中,您需要在Podfile中包含相应的subspec。默认情况下,不包含任何内容。

使用DocumentPicker(Using DocumentPicker)

在iOS Expokit项目中,DocumentPicker模块需要iCloud权利才能正常工作。如果您的应用程序尚未安装,则可以通过在Xcode中打开项目并按以下步骤添加它:

  • 在项目中,转到功能选项卡。
  • 将iCloud开关设置为打开。
  • 检查iCloud文件复选框。

如果一切正常,你的屏幕应该是这样的:

技术分享图片


下一张继续介绍,这一篇主要介绍了:expo中expo kit 高级属性,欢迎大家关注我的微信公众号,这篇文章是否被大家认可,我的衡量标准就是公

众号粉丝增长人数。欢迎大家转载,但必须保留本人博客链接!

技术分享图片

 

Expo大作战(二十三)--expo中expo kit 高级属性(没干货)


推荐阅读
  • 本文详细介绍了SQL日志收缩的方法,包括截断日志和删除不需要的旧日志记录。通过备份日志和使用DBCC SHRINKFILE命令可以实现日志的收缩。同时,还介绍了截断日志的原理和注意事项,包括不能截断事务日志的活动部分和MinLSN的确定方法。通过本文的方法,可以有效减小逻辑日志的大小,提高数据库的性能。 ... [详细]
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 1,关于死锁的理解死锁,我们可以简单的理解为是两个线程同时使用同一资源,两个线程又得不到相应的资源而造成永无相互等待的情况。 2,模拟死锁背景介绍:我们创建一个朋友 ... [详细]
  • 后台获取视图对应的字符串
    1.帮助类后台获取视图对应的字符串publicclassViewHelper{将View输出为字符串(注:不会执行对应的ac ... [详细]
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 本文讲述了作者通过点火测试男友的性格和承受能力,以考验婚姻问题。作者故意不安慰男友并再次点火,观察他的反应。这个行为是善意的玩人,旨在了解男友的性格和避免婚姻问题。 ... [详细]
  • 本文介绍了使用PHP实现断点续传乱序合并文件的方法和源码。由于网络原因,文件需要分割成多个部分发送,因此无法按顺序接收。文章中提供了merge2.php的源码,通过使用shuffle函数打乱文件读取顺序,实现了乱序合并文件的功能。同时,还介绍了filesize、glob、unlink、fopen等相关函数的使用。阅读本文可以了解如何使用PHP实现断点续传乱序合并文件的具体步骤。 ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
author-avatar
尊园2010_630
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有