【发布时间】:2020-10-07 15:08:56
【问题描述】:
首先,我是 react-native 的新手,所以请原谅我缺少有关故障排除的知识。
我使用 Expo 构建了一个基本应用程序,当我运行 expo start 并扫描 QR 码以在我的物理设备上运行它时,它运行得非常好。
然后我在终端中运行expo build:android 并选择 apk 来创建一个 apk 文件。它会安装,但是当我尝试在手机上打开该应用程序时,它会立即崩溃。我不确定为什么会发生这种情况,或者如何解决它。
我采取的一些步骤:
- 重新安装 expo-cli
- 重新安装 react-native
- 跑
npm-update - 在我的 app.json 文件中手动将我的 sdkVersion 降级为 37.0.0(根据在线论坛的建议)
这是我的 app.json 文件:
{
"expo": {
"name": "FactApp",
"slug": "FactApp",
"sdkVersion": "37.0.0",
"platforms": [
"ios",
"android",
"web"
],
"version": "1.0.0",
"orientation": "portrait",
"icon": "./assets/icon.png",
"splash": {
"image": "./assets/splash.png",
"resizeMode": "contain",
"backgroundColor": "#ffffff"
},
"android": {
"package": "com.kmdevops.factapp",
"versionCode": 2,
"config": {
"googleMobileAdsAppId": "ca-app-pub-7529073010403742/8555991419"
}
},
"updates": {
"fallbackToCacheTimeout": 0
},
"assetBundlePatterns": [
"**/*"
],
"ios": {
"supportsTablet": true,
"bundleIdentifier": "com.yourcompany.yourappname",
"buildNumber": "1.0.0"
},
"description": ""
}
}
这是我的 package.json 文件:
{
"main": "node_modules/expo/AppEntry.js",
"scripts": {
"start": "expo start",
"android": "expo start --android",
"ios": "expo start --ios",
"web": "expo start --web",
"eject": "expo eject"
},
"dependencies": {
"@react-native-community/masked-view": "0.1.6",
"@react-navigation/native": "^5.5.1",
"expo": "^37.0.12",
"expo-ads-admob": "~8.1.0",
"expo-linear-gradient": "~8.1.0",
"react": "~16.9.0",
"react-dom": "~16.9.0",
"react-native": "https://github.com/expo/react-native/archive/sdk-37.0.1.tar.gz",
"react-native-gesture-handler": "~1.6.0",
"react-native-reanimated": "~1.7.0",
"react-native-safe-area-context": "0.7.3",
"react-native-screens": "~2.2.0",
"react-native-web": "~0.11.7",
"react-navigation": "^4.3.9",
"react-navigation-stack": "^2.7.0",
"react-navigator": "0.0.0-0"
},
"devDependencies": {
"babel-preset-expo": "~8.1.0",
"@babel/core": "^7.8.6"
},
"private": true
}
任何帮助将不胜感激!
【问题讨论】:
-
您是否通过扫描二维码在运行应用时检查控制台是否显示任何错误?
-
似乎没有任何错误。您是指我使用二维码运行应用程序后以黄色弹出的错误吗?
-
黄色是警告。它们不会导致应用程序崩溃。当您的应用程序崩溃时,您会出现蓝屏吗?如果是,请上传该蓝屏的屏幕截图和日志。
-
嗨,我刚刚使用 expo 运行了该应用程序,它运行良好。我的终端上根本看不到任何错误。还有其他检查错误的方法吗?
-
我的意思是,当你运行apk时,当它崩溃时你会蓝屏吗?
标签: react-native apk react-native-android expo