我从Playstore安装了使用expo cli构建的react-native应用程序,我正在迁移到react-native cli。我无法在现有的expo版本上安装react-native cli版本(使用相同的android密钥签名)。我收到以下错误
未安装应用,该软件包与现有软件包发生冲突 同名
任何解决方案将不胜感激
答案 0 :(得分:0)
Expo和React-native cli是两个不同的东西,因为我也在单个应用程序中同时实现这两个东西,之后我的应用程序开始崩溃,因此您一次只能使用一个cli。
这是两者的优缺点。
反应本机初始化:
优点:
您可以添加用Java / Objective-C编写的本机模块(可能是唯一但最强大的模块)
缺点:
需要Android Studio和X代码来运行项目 没有Mac,就无法为iOS开发 必须通过USB连接设备才能使用它进行测试 字体需要在X代码中手动导入 如果要共享应用程序,则需要发送整个.apk / .ipa文件 不提供开箱即用的JS API,例如推送通知,资产管理器,例如,它们需要手动安装并与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的功能,例如您无法通过QR码分享 弹出Expo Kit时,您仅限于Expo Kit当时支持的react本机版本 Expo Kit(带有本地模块)的调试要复杂得多,因为它混合了两种语言和不同的库(不再提供官方的Expo支持) 而且,您可以使用满足您的应用程序要求的任何一种。
希望它将使您了解这两个Clis之间的区别。