RN开发与使用Expo+EAS打包发布及配套苹果开发

引言

作为一名移动应用开发者,我们常常要面对多平台的开发和发布需求。React Native(简称RN)是一个强大的跨平台框架,而Expo提供了便捷的工具链,让我们更轻松地构建、测试和发布RN应用。此外,Expo还整合了EAS(Expo Application Services),为项目打包和发布带来更多便利。本文将介绍RN开发、Expo+EAS打包发布以及与苹果开发的配套问题。

1. RN开发

1.1 概述

RN是Facebook开源的一种用于构建原生 iOS 和 Android 应用的框架。它利用JavaScript和React的知识,允许我们编写一次代码,同时在两个平台上共享大部分逻辑。RN提供了丰富的组件库和API,使得开发者能够快速搭建用户界面并处理用户交互。

1.2 开发环境配置

在开始RN开发之前,我们需要配置好相应的开发环境。首先,确保你已经安装了Node.js和npm包管理器。然后,通过运行以下命令来安装RN的命令行工具:

1
npm install -g react-native-cli

接下来,在你希望创建RN项目的目录中运行以下命令来初始化一个新项目:

1
react-native init MyProject

1.3 开发流程

在RN开发中,我们可以通过创建组件来构建用户界面。利用React的组件模型和JavaScript语法,我们能够轻松地定义UI的不同部分,并编写相应的业务逻辑。

在编写代码时,我们可以使用调试工具和热重载功能加快开发速度。同时,RN还提供了与原生模块交互的能力,使我们可以直接调用iOS和Android的原生API。

2. 使用Expo+EAS打包发布

2.1 Expo简介

Expo是一个基于RN的开发工具链,它为开发者提供了一套强大而易用的工具,简化了RN项目的构建、测试和发布过程。使用Expo,我们无需安装和配置复杂的开发环境,只需下载Expo客户端即可开始开发。

2.2 Expo+EAS简介

Expo Application Services(EAS)是Expo的扩展服务,它提供了更多高级功能,包括更灵活的构建配置、自定义构建流程、更精细的资源管理和更快的构建速度等。EAS能够将我们的RN项目打包成二进制文件,并提供更多选项和控制来适应各种需求。

2.3 使用Expo+EAS创建项目

要使用Expo+EAS创建项目,首先确保你已经安装了Expo CLI。运行以下命令进行安装:

1
npm install -g expo-cli

接下来,在你希望创建Expo项目的目录中运行以下命令:

1
expo init MyProject

然后按照提示进行相关设置。你可以选择使用现有的模板或从头开始创建一个空白项目。

2.4 使用Expo+EAS打包与发布

在完成项目开发后,我们可以使用Expo+EAS进行更灵活和定制化的打包和发布。EAS提供了命令行工具和配置文件,使我们能够自定义构建流程、选项和资源管理。

首先,在项目根目录中运行以下命令来登录到Expo账号:

1
expo login

然后,我们可以使用EAS命令行工具来构建和发布应用。例如,要构建iOS应用,可以运行以下命令:

1
eas build --platform ios

这将触发EAS服务,根据配置文件进行构建,并生成一个IPA文件。你可以使用Xcode将其上传至App Store进行发布。

对于Android平台,你可以运行以下命令进行构建和打包:

1
eas build --platform android

这将生成一个APK文件,你可以上传至Google Play进行发布。

EAS还提供了更多高级配置的选项,如自定义构建流程、指定构建环境、管理依赖等。你可以通过编辑配置文件(如eas.json)来调整这些选项。

3. 配套苹果开发

3.1 创建开发者账号

在配套苹果开发之前,你需要创建一个苹果开发者账号。访问苹果开发者网站并按照指引完成账号注册和相关设置。

3.2 申请证书和配置Provisioning Profile

为了将你的RN应用发布到App Store,你需要申请并配置相应的证书和Provisioning Profile。这些文件是与你的开发者账号绑定的,确保你可以将应用发布到苹果的生态系统中。

通过Xcode或者苹果开发者网站,你可以创建和下载证书和Provisioning Profile。然后,将这些文件导入到Expo提供的构建服务器中,EAS会为你自动处理签名和配置。

3.3 审核与发布

一旦你的应用通过了苹果的审核,你就可以将它发布到App Store上了。在iTunes Connect中创建一个App Store Connect记录,并上传你从EAS生成的IPA文件。接下来,填写应用的相关信息和截图,并设置定价和分发方式。

待所有设置完成后,你可以提交应用进行审核。一旦审核通过,你的应用将在App Store上可供下载和使用。

结论

通过使用React Native开发应用,并结合Expo+EAS工具链,我们可以更高效地构建、测试和发布跨平台的移动应用。Expo的简化流程和丰富功能使得我们可以更专注于业务逻辑的实现,而无需花费过多精力在配置和打包发布上。同时,EAS的扩展服务带来更灵活、定制化的打包和发布选项,满足不同项目的需求。配套苹果开发的操作也可以帮助我们将应用成功推向App Store,进一步扩大用户群体。因此,选择使用Expo+EAS作为RN开发的工具链是一个明智的决策。

vite是什么

很久很久没写博客了,今天拾起来,干它一篇。最近也有很多不错的项目开源出来,今天我就来研究一下,最近很火的,尤大大刚发布的 vite。

vue3之初体验

前段时间,神秘的尤爸爸终于发布了vue3.0。因为发布个vue3,尤爸爸还一度成为网红,积攒了一大波粉丝,又是搞直播又是搞宣传什么的,哈哈。今天让我们来看看vue3相较于vue2有哪些升级和不同吧~

前端自动化测试(一)

最近公司项目在升级 react 技术栈,因为改动巨大,尤其是在路由改造和渲染方面。且我司项目庞大,路由众多,而我司主要测试靠人肉 e2e 测试,并没有做规范的高效率的自动化测试。所以此次升级回归测试范围很广,且风险很大。为了以后能够应对这种复杂的情况,故而研究一下前端自动化测试。

写着写着发现这个博客议题忒大,我们还是一点一点的写吧,第一篇我们先来学习一些概念,有一个理论基础,下一期再根据现在我司项目写一个自动化测试工具,来补充一下我们自动化测试的缺漏,并解决一下我们技术栈升级导致人肉回归测试不能全覆盖的问题。自动化测试是一个长期积累的过程,先迈出第一步吧。

初探Deno

背景介绍

Node.js 的创建者 Ryan Dahl 觉得 Node.js 已经背离了自己的初衷,因为他已经将 Node 托管给别人很久了,当他回来时,发现物是人非,因为有些众所周知且无法忽视的问题,Ryan Dahl 决定再写一个替代品,彻底解决这些问题。它就是 Deno(Destroy Node.js),顾名思义,推翻 Node。Deno 在 2020 年 5 月 14 日也正式发布了 1.0 版本,它的更新非常之快,扶我起来,我还能学。

AST抽象语法树

AST-抽象语法树

同事写了一个脚本,把所有引入某一组件的 js 文件都找出来了,我问他是咋做的,字符串正则匹配吗,他说用 AST 做的,今天我们就来研究一下。
我也是人生第一次。

,