javascript - Expo React Native 错误:未处理的 JS 异常:清单必须指定 logUrl
问题描述
在使用 expo 发布我的应用程序expo publish
或将应用程序推送到 App Store 和 Play Store 时,我在 iOS 和 Android 平台上启动生产应用程序时崩溃并出现错误:
未处理的 JS 异常:清单必须指定 logUrl
由于开发应用程序上没有发生此错误,因此我不知道如何调试它。有没有人遇到同样的问题?您对发生的事情有任何想法,或者您对查找错误的方法有任何想法吗?
只是为了获得更多背景信息,我确实在几个月前将我的应用程序发布到了两家商店,没有任何问题。除了将 Expo SDK 从版本 38 更改为 40 之外,我没有更改清单中的任何内容。这是我当前的清单:
{
"expo": {
"name": "My App",
"slug": "myApp",
"privacy": "public",
"platforms": ["ios", "android"],
"version": "1.0.2",
"orientation": "portrait",
"backgroundColor": "#ffffff",
"primaryColor": "#7198FF",
"icon": "./assets/android-icon.png",
"splash": {
"image": "./assets/Launch_Screen.png",
"resizeMode": "contain",
"backgroundColor": "#ffffff"
},
"updates": {
"fallbackToCacheTimeout": 0
},
"assetBundlePatterns": ["**/*"],
"ios": {
"supportsTablet": false,
"bundleIdentifier": "com.company.app",
"buildNumber": "1"
},
"android": {
"package": "com.company.app",
"googleServicesFile": "./google-services.json",
"permissions": [
"CAMERA",
"MANAGE_DOCUMENTS",
"READ_CONTACTS",
"READ_CALENDAR",
"WRITE_CALENDAR",
"READ_EXTERNAL_STORAGE",
"READ_PHONE_STATE",
"RECORD_AUDIO",
"USE_FINGERPRINT",
"VIBRATE"
],
"versionCode": 21
},
"androidNavigationBar": {
"visible": "sticky-immersive",
"barStyle": "dark-content",
"backgroundColor": "#FFFFFF"
},
"androidStatusBar": {
"hidden": false,
"translucent": true,
"barStyle": "dark-content",
"backgroundColor": "#FFFFFF"
},
"extra": {
"firebase": {
"apiKey": "FIREBASE_KEY",
"authDomain": "app.firebaseapp.com",
"databaseURL": "https://app.firebaseio.com",
"projectId": "app",
"storageBucket": "app.appspot.com",
"messagingSenderId": "SENDER_ID",
"appId": "1:appID",
"measurementId": "G-ID"
}
},
"web": {
"config": {
"firebase": {
"apiKey": "FIREBASE_KEY",
"authDomain": "app.firebaseapp.com",
"databaseURL": "https://app.firebaseio.com",
"projectId": "app",
"storageBucket": "app.appspot.com",
"messagingSenderId": "MESSEGING_ID",
"appId": "1:APP_ID:web:WEB_ID",
"measurementId": "G-ID"
}
}
},
"hooks": {
"postPublish": [
{
"file": "sentry-expo/upload-sourcemaps",
"config": {
"organization": "app",
"project": "app",
"authToken": "SENTRY_TOKEN"
}
}
]
}
}
}
解决方案
在阅读了@Oleksii 关于检查是否启用了 Expo CLI 日志记录的评论后Logs.enableExpoCliLogging();
,似乎这是导致问题的原因。
只需通过导入import { Logs } from 'expo';
然后调用Logs.disableExpoCliLogging();
应用程序入口点文件来禁用它们,使其在生产环境中再次运行!
再次感谢@Oleksii!
推荐阅读
- django - django css 不会从索引 url 而不是任何其他 url 加载
- python-3.x - 如何使 CSI 摄像机的 cv2.videoCapture 运行得更快
- docker - 无法在 Azure 容器实例(ACI)中从我的 Web api 容器连接 redis 容器
- sql - SQL 添加一个新列,其值只能在几个固定选项中
- node.js - 更改 index.js 文件时 Nodemon 不会重新启动
- java - 是否可以创建与 Java 相同但具有自定义/更好语法的编程语言?
- python - 如果数据通过管道传输到我的程序,Python curses getch() 总是返回 -1
- java - Java Swing - 我的 JPanel 正在吃掉我的 JButton
- machine-learning - 当训练和测试数据产生不同的最终特征时,如何对它们应用相同的处理管道
- firebase - 在recyclerview中进行搜索