从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应用从开发测试到上架全流程,以及记录开发中的问题解决方案,以及相关工具包的推荐;

相关推荐
Mh5 小时前
别再只会 `find` 了:Map 在前端业务里的真实用法
前端·javascript
陈随易6 小时前
FFmpeg 9.0 发布,代号 Lei,音视频处理再升级
前端·后端·程序员
爱丶狸6 小时前
Grafana_Zabbix_ImageRenderer_部署与前端操作手册
linux·前端·zabbix·grafana·kylin
用户059540174469 小时前
把AI对话记忆存储测试从手工改成Playwright+pytest,覆盖率从20%提到96%,回归时间缩短90%
前端·css
kyriewen9 小时前
别再这样写TypeScript了——Code Review中最常见的8个反模式
前端·javascript·typescript
名字还没想好☜10 小时前
Next.js ‘use client‘ 到底加在哪:Server/Client Components 边界与常见报错
开发语言·前端·javascript·react·next.js
午安~婉10 小时前
GitHub Token/ GitHub Stats统计显示图异常
前端·github·vercel·github token
码云之上10 小时前
AI Agent 工程化总览篇:从 Prompt 到 Harness
前端·人工智能
2501_9269783310 小时前
以说明书 DNA 为模板——完整 AGI 的结构图景
前端·人工智能·经验分享·笔记·ai写作
IT_陈寒10 小时前
Vite静态资源引用这个坑我踩得有点疼
前端·人工智能·后端