我很难弄清楚为什么我的应用程序在iOS上失败了。
我有一个具有以下架构的monorepo:
- apps/
- app1/
- package.json
- eas.json
- src/
- ...
- app2/
- ...
- packages/
- package.json
我跑
eas build --platform ios --local
在内部
apps/app1
如上面提到的
Expo ressources
。这将正确创建构建。我确实设法将其安装到模拟器中并启动了应用程序。但是,我立即收到多个错误,这些错误似乎与从
package.json
从根的层面。我做错了什么?
我遇到了多个错误:
-
不变违规:requireNativeComponent:在UIManager中找不到“RNCSafeAreaProvider”。
-
错误:找不到本机模块'ExponentAV',js引擎:hermes
-
错误:找不到本机模块“ExpoSecureStore”,js引擎:hermes
-
错误:[@RNC/AsyncStorage]:本地模块:AsyncStorage为空
-
错误:[Reanimated]Reanimated的本机部分似乎未初始化。
根级别package.json的内容:
{
"name": "xxxxxxx",
"version": "1.0.0",
"description": "",
"main": "index.js",
"workspaces": [
"apps/*",
"packages/*"
],
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"@expo-google-fonts/poppins": "^0.2.3",
"@expo/metro-runtime": "~3.2.1",
"expo": "~51.0.11",
"expo-av": "~14.0.5",
"expo-constants": "^16.0.2",
"expo-dev-client": "~4.0.15",
"expo-font": "^12.0.6",
"expo-linking": "^6.3.1",
"expo-router": "^3.5.15",
"react": "^18.2.0",
"react-dom": "18.2.0",
"react-native": "0.74.2",
"react-native-gesture-handler": "^2.16.2",
"react-native-reanimated": "~3.10.1",
"react-native-reanimated-carousel": "^4.0.0-alpha.12",
"react-native-safe-area-context": "4.10.1",
"react-native-svg": "15.2.0",
"react-native-web": "~0.19.10",
"expo-device": "~6.0.2",
"expo-secure-store": "~13.0.1",
"expo-splash-screen": "~0.27.5",
"typescript": "~5.3.3",
"expo-sharing": "~12.0.1",
"expo-linear-gradient": "~13.0.2",
"@react-native-async-storage/async-storage": "1.23.1",
"expo-notifications": "~0.28.7"
}
}
内容
app#1/package.json
{
"name": "solfy-mobile",
"version": "1.0.0",
"main": "expo-router/entry",
"scripts": {
"start": "expo start",
},
"dependencies": {
"@expo-google-fonts/inter": "^0.2.3",
"@expo/vector-icons": "^14.0.0",
"@react-navigation/native": "^6.1.8",
"@react-navigation/stack": "^6.3.18",
"@myapp/package1": "*",
"@myapp/package2": "*",
"@types/react": "~18.2.45",
"expo-updates": "^0.25.16",
"uuid": "^9.0.1",
"wavefile": "^11.0.0"
},
"devDependencies": {
"@babel/core": "^7.20.0",
"babel-plugin-module-resolver": "^5.0.0"
},
"private": true
}
备注:使用以下命令使用Expo Go时,应用程序工作正常:
npm run start --workspace app1
你能帮我吗,我无法理解发生了什么。我可能错过了使用expo/router或monorepo根依赖关系的monorepo配置中的一些东西,或者类似的东西?
我试着编辑packages.json文件、eas.json、metro和rebuild,但我没有弄清楚配置错误的确切位置。
谢谢你的帮助!