react native 运行问题和调试 --持续更新

第一阶段: 运行项目-搭建环境

问题一: 一直卡住这里

原因: 模拟器不对 sdk35 模拟器也得有。具体实现:这里的API选择 show All

问题二:版本不一样 直接改成一致(也搞了半天 一开始没看到具体哪几个不一致 后来整体改了)

箭头的版本要和 react、react-dom保持一致

复制代码
"react": "19.0.0",
"react-dom": "19.0.0",
"react-native": "0.78.0",

版本不一致 也会报一些不想关的错误:

问题三: 报错

TurboModuleRegistry.getEnforcing(...): 'Devicelnfo' could notbe found. Verif

解决办法:需要安装react-native-device-info

但是有冲突:

执行npm install react-native-device-info --legacy-peer-deps

运行的结果:

太坑了!!!

执行的命令为:

1.npm install ; 2.npm start ; 3.npm run android

步骤二: 调研---如何调试

1.谷歌浏览器输入: chrome://inspect/#devices

配置本地链接

就可以看到后续的:

第三坑: 调试

查资料需要ctrl+m 但是我点没反应,查了一堆资料 发现是我运行的有问题,

打开终端: npm start

再打开另一个终端 : npm run android(注意: 不能在一个终端 要分开,否则调试不了)

然后按下ctrl+m

有个选择,然后出现这个框

第五步:打包

cd android

./gradlew assembleRelease

报错(因为接手别人的项目 有配置好的文件 但是执行还是报错

> Configure project :react-native-reanimated Android gradle plugin: 8.8.0 Gradle: 8.12 > Task :app:validateSigningRelease FAILED Incubating Problems report is available at: file:///E:/android/senke_app/android/build/reports/problems/problems-report.html FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':app:validateSigningRelease'. > Keystore file 'E:\android\senke_app\android\app\my-release-key.keystore' not found for signing config 'release'. * Try: > Run with --stacktrace option to get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights. > Get more help at https://help.gradle.org. Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0. You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins. For more on this, please refer to https://docs.gradle.org/8.12/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation. BUILD FAILED in 31s 882 actionable tasks: 46 executed, 836 up-to-date

重新生成密钥并配置:

1. ‌**生成签名密钥(打开cmd 执行下面的命令 然后 要填写一些信息 照着填写就行)**‌

安卓应用必须使用签名密钥(.keystore.jks 文件)进行签名。可以通过以下命令生成:

复制代码

keytool -genkeypair -v -keystore my-release-key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias my-alias

  • -keystore:指定密钥库文件名(如 my-release-key.jks)。
  • -alias:密钥别名(如 my-alias)。
  • -validity:密钥有效期(天)。

2. ‌配置 Gradle 签名

android/app/build.gradle 中配置签名信息:

复制代码

groovyCopy Code

javascript 复制代码
android { signingConfigs { release { storeFile file("my-release-key.jks") storePassword "your_store_password" keyAlias "my-alias" keyPassword "your_key_password" } } buildTypes { release { signingConfig signingConfigs.release minifyEnabled true // 启用代码压缩 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } }

3. ‌生成发布版 APK 或 AAB

生成 APK

运行以下命令生成签名后的 APK:

cd android

./gradlew assembleRelease

具体配置的:

gradle.properties文件配置下面的文件名 密码

继续升级打怪 ----研究清除缓存报错问题

相关推荐
冬奇Lab1 天前
AI Workflow 定义的四次演进:从 Markdown 到 JS 脚本,再到分布式多 Agent
javascript·人工智能·agent
一颗烂土豆1 天前
Meshopt 压缩深度解析,为什么它比 Draco 更快
前端·javascript·webgl
YFF菲菲兔1 天前
调度系统和调和系统的桥梁
react.js
kyriewen1 天前
同事每天催我 Code Review,我写了个脚本让 AI 替我 review PR——现在他反过来催 AI 了
前端·javascript·ai编程
weedsfly1 天前
迭代器、生成器与异步迭代——让数据“按需流动”的艺术
前端·javascript
YFF菲菲兔1 天前
commitRoot 源码解析
react.js
假如让我当三天老蒯1 天前
前端跨域解决方案(学习用)
前端·javascript·面试
铁皮饭盒1 天前
Bun 哪比 Node.js 快?
javascript·后端
JieE2122 天前
LeetCode 56. 合并区间|超清晰 JS 图解思路,面试高频区间题
javascript·算法·面试
candyTong2 天前
RTK 技术原理:一次典型会话里,80% 上下文是怎么省下来的
javascript·后端·架构