无法在以前使用 expo cli 构建的应用程序上安装 React 本机 cli 应用程序

Posted

技术标签:

【中文标题】无法在以前使用 expo cli 构建的应用程序上安装 React 本机 cli 应用程序【英文标题】:Not able to install React native cli app over app built previously with expo cli 【发布时间】:2019-12-04 15:28:17 【问题描述】:

我已经从 playstore 安装了一个使用 expo cli 构建的 react-native 应用程序,我正在迁移到 react-native cli。我无法在现有的 expo 构建上安装 react-native cli 构建(使用相同的 android 密钥签名)。我收到以下错误

应用未安装,包与现有包冲突 同名

任何解决方案将不胜感激

【问题讨论】:

【参考方案1】:

Expo 和 React-native cli 是两个不同的东西,因为我也在单个应用程序中实现了两者,之后我的应用程序开始崩溃,所以你一次只能使用一个 cli。

这是两者的区别和优点 - 缺点。

React Native 初始化

优点:

您可以添加用 Java/Objective-C 编写的本机模块(可能是唯一但最强大的)

缺点:

需要 Android Studio 和 X Code 来运行项目 没有 Mac 就无法为 ios 开发 设备必须通过 USB 连接才能用于测试 字体需要在 X Code 中手动导入 如果您想共享应用程序,您需要发送整个 .apk / .ipa 文件 不提供开箱即用的 JS API,例如Push-Notifications,Asset Manager,例如它们需要手动安装并与 npm 链接 正确设置工作项目(包括设备配置)相当复杂,可能需要时间

世博会:

优点:

设置项目很简单,几分钟内即可完成 您(和其他人)可以在处理项目时打开项目 共享应用程序很容易(通过 QR 码或链接),您不必发送整个 .apk 或 .IPA 文件 运行应用程序无需构建 在标准项目中集成一些基本库(推送通知、资产管理器等) 您可以将其弹出到 Expo Kit 并集成本机代码,继续使用某些 Expo 功能,但不是全部 Expo 可以构建 .apk 和 .ipa 文件(可以通过 Expo 分发到商店)

缺点:

您不能添加本机模块(对某些人来说可能会改变游戏规则) 您不能在 Objective-C/Java 中使用使用本机代码的库 标准的 Hello World 应用程序大约 25MB 大(因为集成了库) 如果您想使用:人脸检测器、Ar Kit o 您需要将其弹出到 Expo Kit 的付款 将其弹出到 Expo Kit 需要权衡 Expo 的功能,例如你不能通过二维码分享 弹出到 Expo Kit 时,您仅限于当时 Expo Kit 支持的 react native 版本 Expo Kit 中的调试(使用本机模块)要复杂得多,因为它混合了两种语言和不同的库(不再支持 Expo 官方) 您可以使用任何满足您的应用程序要求的。

希望它能让你理解这两个 Clis 之间的区别。

【讨论】:

是的,请在 time expo 或 react-native 安装一个 cli。

以上是关于无法在以前使用 expo cli 构建的应用程序上安装 React 本机 cli 应用程序的主要内容,如果未能解决你的问题,请参考以下文章

Expo CLI 通过纱线安装,但无法正常工作

Expo iOS Build 无法正常工作--“无法从 App Store Connect 接收最新的 API 密钥”

如何使用 Expo CLI 为 android 构建 64 位本机代码

无法构建 expro 项目

CRNA/Expo 和 iOS - 如何创建使用开发人员证书签名的构建?

无法运行“npm install expo-cli --global”