从0到1搭建一个RN应用从开发测试到上架全流程

前言

本文从0到1搭建一个RN项目,包含开发、调试、上架全流程,以及记录开发中的问题解决方案,本文不涉及代码相关的问题;

工具

Expo go :用于开发预览调试使用需要梯子在google play下载app
VSCode :代码编辑器;
梯子:自行准备梯子

项目构建

bash 复制代码
# 新建一个文件夹
RNobject
# 进入文件夹
cd RNobject
# 使用expo创建项目
npx create-expo-app@latest 项目名//例如:rnapp
# 项目构架成功进入工程目录
cd rnapp
# 启动项目
npm start

关于Expo go扫码预览本地启动项目的rn项目预览失败

问题描述 :使用npm start启动成功后用Expo go APP扫码后会报错

如图所示:

解决方法 开启隧道模式:npx expo --tunnel在同一Wi-Fi网络下注释:启动比较慢

相关工具包推荐

路由 :expo-router
状态管理 :Redux DevTools
UI库 :自行搜索(例如 React Native Paper)
请求方式 :常用的 axios、fetch
其他: ......

expo go调试

  • 使用expo go 摇晃手机即可调查控制台
  • 点击open js debugger即可调查桌面控制台
  • 进行调试

RN项目打包上线

  • 注册 Expo 账号
  • 下载easnpm install -g eas-cli
  • 登录账号eas login:输入账号密码
  • 项目生成配置项目eas build:configure
csharp 复制代码
# 项目中会生成eas.json
{
  "cli": {
    "version": ">= 16.1.0",
    "appVersionSource": "remote"
  },
  "build": {
    "development": {
      "developmentClient": true,
      "distribution": "internal",
      "channel":"development"//添加
    },
    "preview": {
      "distribution": "internal",
      "channel":"preview"//添加
    },
    "production": {
      "channel": "production"//添加
    }
  },
  "submit": {
    "production": {}
  }
}
# 生成的配置文件修改如上图

构建 Android 应用

bash 复制代码
# 构建指令
eas build --platform android --profile preview
# 说明
构建完成后,可以通过 Expo 提供的链接下载生成的 APK 文件

构架成功如图所示

我们也可以在expo网站中查看:如图所示

  • 把apk文件提交应用商店 把生成的apk上架到google play
  • 补充说明(可选):如何需要生成android代码目录npx expo prebuild
  • 热更新配置(可选)
bash 复制代码
# 在app.json中配置如下
{
  "expo": {
    "updates": {
      "fallbackToCacheTimeout": 0,
      "url": "https://u.expo.dev/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
    }
  }
}

总结

以上就是从0到1搭建一个RN应用从开发测试到上架全流程,以及记录开发中的问题解决方案,以及相关工具包的推荐;

相关推荐
p***4348几秒前
Vue混合现实开发
前端·vue.js·mr
ArkPppp2 分钟前
大道至简-Shadcn/ui设计系统初体验(下):Theme与色彩系统实战
前端·前端框架
炒米23333 分钟前
通义千问Qwen3-Coder模型帮我总结的typescript笔记
前端
__花花世界8 分钟前
前端日常工作开发技巧汇总
前端·javascript·vue.js
0思必得021 分钟前
[Web自动化] HTTP/HTTPS协议
前端·python·http·自动化·网络基础·web自动化
TDengine (老段)22 分钟前
TDengine 转换函数 TO_JSON 用户手册
android·大数据·数据库·json·时序数据库·tdengine·涛思数据
冰封剑心35 分钟前
MiniCPM-V-2_6 (4-bit 量化)使用
java·前端·数据库
q***428238 分钟前
SpringCloudGateWay
android·前端·后端
爱泡脚的鸡腿40 分钟前
uni-app D5 实战(小兔鲜)
前端
tomato_40442 分钟前
本地系统、虚拟机、远程服务器三者之间的核心区别
前端