世博会在生产构建中找不到“主要”应用程序?

2024-01-01

几周前我一直在尝试修复这个错误,但没有成功。问题是我因此无法发布我的应用程序。

当我为 iOS 或 Android 中的任何一个构建 expo 应用程序时,Expo CLI 签名过程进展顺利,没有错误并生成最终捆绑包,但是当我将 spa 或 apk 文件安装到真实设备中时,它会显示启动屏幕 4 或 5连续多次(某种循环),最后显示以下错误消息:

查了一下没有结果:

https://forums.expo.io/t/application-main-has-not-been-registered/14395 https://forums.expo.io/t/application-main-has-not-been-registered/14395

应用程序主体尚未注册 https://stackoverflow.com/questions/49410115/application-main-has-not-been-registered

https://forums.expo.io/t/application-main-has-not-been-registered/11753 https://forums.expo.io/t/application-main-has-not-been-registered/11753

我的 package.json 如下所示:

{
  "name": "Sxunco",
  "homepage": "https://www.sxunco.com",
  "version": "1.0.3",
  "private": true,
  "main": "node_modules/expo/AppEntry.js",
  "jest": {
    "preset": "jest-expo",
    "transformIgnorePatterns": [
      "node_modules/(?!((jest-)?react-native|react-clone-referenced-element|expo(nent)?|@expo(nent)?/.*|react-navigation|redux-persist|native-base(-shoutem-theme)|native-base|react-native-router-flux))"
    ]
  },....

我的应用程序.js:

import React from 'react';
import Root from './src/native/index';
import configureStore from './src/store/index';

const { persistor, store } = configureStore();

export default function App() {
  return <Root store={store} persistor={persistor} />;
}

我尝试过,结果相同:

  • Adding "appKey": "main"进入app.json
  • Adding AppRegistry.registerComponent(‘main’, () => App);进入 App.js 和博览会registerRootComponent(App)(分开和一起,都不起作用)
  • 更改“主”路径 package.json直接到App.js并使用上述方法注册应用程序 手动

当我运行构建时,我还运行:

exp start --no-dev --minify

所以我等待服务器完成加载然后运行expo build:android

请我不知道该怎么办,因此我无法发布我的应用程序。


1)检查index.js并确保yourAppName已注册,而不是main:

app.json根文件夹中的文件:

{
  "name": "TestSvgJoy",
  "displayName": "TestSvgJoy"
}

index.js(从根文件夹,如果你没有它,你需要更新 Xcode 中的构建脚本,如下所示)

import {AppRegistry} from 'react-native';
import App from './App';
import {name as appName} from './app.json';

AppRegistry.registerComponent(appName, () => App);

这是应用程序在 Xcode 中的外观:

2) AppDelegate.m 应该有 2 行,如下所示

#if DEBUG
  return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil];
#else
  return [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
#endif

注意:如果您使用的是 Expo 并且应用程序未分离,您可以忽略此步骤。

3) 确保您的根文件夹包含index.js 或index.ios.js。

笔记: 如果您需要自定义路径entryFile (index.js or index.ios.js) go to Xcode, project target, Build Phases, Bundle ReactNative code and images并提供一个额外的参数,例如./src/index.ios.js

enter image description here To test things quickly and get more info about the errors go to Xcode, Product, Scheme, Edit Scheme, Run, Build Configuration and set it to Release and run it on the simulator.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

世博会在生产构建中找不到“主要”应用程序? 的相关文章

随机推荐

  • 在 Windows 资源管理器中右键单击使用 VSCode 打开,没有重新打开以前的文件

    描述 当我使用右键菜单中的 使用 VS Code 打开 从 Windows 资源管理器中打开选定的文件时 VSCode 仅打开我选择的文件 它没有像sublime那样重新打开以前的文件 有什么办法可以改变这种行为吗 已经设置 window
  • Ruby on Rails - params 是方法还是哈希?

    所以 我正在尝试入门Ruby on Rails 指南部分here http guides rubyonrails org getting started html 我不明白line http guides rubyonrails org g
  • web.config IIS 中的 PHP(或其他)CGI 配置

    我最近开发了一个 Web 应用程序的安装程序 是的 带有安装程序的 Web 应用程序 使用维克斯工具套装 http wixtoolset org 该向导引导用户获取站点安装所需的所有基本信息 如下所示 在安装结束时使用自定义操作 我使用动态
  • 如何捕获实体数据源异常

    我有一个绑定到实体数据源的 gridview 我使用工具箱中的 asp net 控件拖放并使用实体数据模型创建了它 我在代码隐藏中几乎没有输入 出于测试目的 我编辑了网格视图并添加了无效的数据 然后我单击更新以引发异常 所以我的问题是我想尝
  • 如何将正常的 for 循环复制到 *ngFor

    rating 4 for i 0 i lt rating i print statement 如何使用 ngFor 在角度 6 中复制相同的 for 循环 循环应根据评级值运行 如果是 2 则应运行 2 次 我想你正在寻找这种解决方案 只需
  • 使变量最后出现在调用堆栈中

    我有一个包含一些字段的类 我需要按值比较此类的实例 所以我定义了GetHashCode and Equals因此 因为该类允许循环引用 所以我需要一种机制来避免无限递归 更详细的解释请参见值等于和循环引用 如何解决无限递归 https st
  • 使用pom文件从目标目录中删除或删除资源文件

    我在 pom xml 中有两个配置文件 并且有一些资源文件已添加到目标资源目录中 project build outputDirectory resources在执行第一个配置文件期间 我需要做的是在执行第二个配置文件期间删除这些资源文件
  • 为什么 isEmoji 实例属性对数字返回 true?

    Problem Why isEmoji实例属性对于数字返回 true 检查下面的示例 let scalars Unicode Scalar 1 for s in scalars print s gt s properties isEmoji
  • Flutter 如何只给容器边框底部

    在 Flutter 中如何仅设置底部边框 如下图所示 我有一个带有文本的容器 从底部显示红色边框 请指导如何仅从底部设置边框 Use Border与bottom争论 Container decoration BoxDecoration bo
  • 在 v-for 循环内选择 vue 2 中的特定元素

    请看代码 div div v if msg last sender click prevent loadMsg msg gt tr some html tr div loadMsg obj obj isActive obj isActive
  • Thread#run 和 Thread#wakeup 之间的区别?

    在 Ruby 中 有什么区别线程 运行 http www ruby doc org core 1 9 3 Thread html method i run and 主题 wakup http www ruby doc org core 1
  • 从 ReactNative-DatePickerAndroid 获取选定日期

    我正在关注React Native DatePicker Android 文档 https facebook github io react native docs datepickerandroid html 对于 DatePickerI
  • Python中的运算符重载:处理不同类型和顺序的参数[重复]

    这个问题在这里已经有答案了 我有一个简单的类 可以帮助对向量 即数字列表 进行数学运算 我的Vector可以乘以其他实例Vector or标量 float or int 在其他更强类型的语言中 我将创建一种方法来将两个相乘vectors 和
  • 具有条件更新的 DynamoDBContext

    在我的应用程序中 我使用亚马逊对象持久性模型并使用 DynamoDBContext 进行操作 CURD 和执行查询 我需要知道如何使用 DynamoDBContext 进行条件更新 并且它应该是异步的 我知道使用亚马逊低级 API 的方法
  • 给定 RNG 算法和一系列数字,是否可以确定哪个种子会产生该系列?

    代码是用 Objective C 写的 但即使你不了解 Objective C 如果你仔细看一下它应该是可以理解的 基本上它是一个 RNG 对象 你实例化一个新实例 如果需要的话设置种子并开始抓取随机数 那么是否可以回溯给定的一系列数字来确
  • css & html:隐藏边框的一角[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我有以下用户界面 我只想隐藏三种颜色的 div 的一角 它应该看起来像这样 任何人都可以知道如何隐藏 div 边框的角 这是我要求的代
  • 错误 2003 (HY000):无法连接到 AWS RDS 上的 MySQL 服务器

    我创建了一个具有 主机名的外部用户以允许远程访问 将本地 MySQL 连接到远程 AWS RDS 时出现以下错误 错误 2003 HY000 无法连接到 instance cvxqy8tbi2bk us east 1 rds amazona
  • Android XML 解析省略“&”

    问题又是 虽然我在代码中成功实现了 SAX 解析器 但它的行为很奇怪 它只是跳过 之后的条目并转到下一个条目 只是想知道这是否是 SAX 解析器的典型工作方式还是我错误地实现了它 我已经实现了 org xml sax ContentHand
  • 如何使用 HttpWebRequest 获得文件并行

    我正在尝试制作一个像 IDM 这样的程序 它可以同时下载文件的部分内容 我用来实现此目的的工具是 C Net4 5 中的 TPL但是我在使用的时候遇到了问题Tasks使操作并行 序列功能运行良好 并且正在正确下载文件 使用任务的并行函数一直
  • 世博会在生产构建中找不到“主要”应用程序?

    几周前我一直在尝试修复这个错误 但没有成功 问题是我因此无法发布我的应用程序 当我为 iOS 或 Android 中的任何一个构建 expo 应用程序时 Expo CLI 签名过程进展顺利 没有错误并生成最终捆绑包 但是当我将 spa 或