Expo SDK 53下使用RevenueCat付费墙与Google Sign-In触发UIKitCore错误导致应用冻结的问题求助
Expo SDK 53下使用RevenueCat付费墙与Google Sign-In触发UIKitCore错误导致应用冻结的问题求助
大家好,我最近把项目升级到Expo SDK 53(对应React Native 0.79.5、React 19)后,在iOS上遇到了一个棘手的问题:
问题现象
- 打开RevenueCat付费墙,或者触发Google Sign-In登录流时,会抛出以下UIKitCore错误:
[UIKitCore] View doesn't recognize its superview as a UIView. This can happen through use of CALayer API on the view layers instead of UIView API on the views. view: <UITextField ... > superview: <UIWindow ...>
- 更严重的是,关闭RevenueCat付费墙后,应用界面会完全冻结——UI仍可见,但所有点击、手势操作都无响应,只能强制杀掉应用重启。关闭Google Sign-In的授权弹窗后,也会出现完全相同的冻结情况。
我已经尝试过的解决方法
- 在
app.config.js中设置"newArchEnabled": false,但问题依然存在 - 执行了完整的清理重建流程:
npx expo prebuild --clean+pod install - 将
@react-native-google-signin/google-signin升级到了最新的v15版本 - 当前使用的
react-native-purchases和react-native-purchases-ui均为v9.2.0版本
环境信息
核心依赖版本:
- Expo SDK 53 (
expo@~53.0.0) - React Native 0.79.5
- React 19.0.0
- iOS 17.x(模拟器环境)
react-native-purchasesv9.2.0react-native-screens~4.11.1
package.json 依赖片段:
{ "dependencies": { "@react-native-google-signin/google-signin": "^15.0.0", "expo": "~53.0.0", "expo-router": "~5.1.3", "react": "19.0.0", "react-dom": "19.0.0", "react-native": "0.79.5", "react-native-gesture-handler": "~2.24.0", "react-native-purchases": "^9.2.0", "react-native-purchases-ui": "^9.2.0", "react-native-safe-area-context": "5.4.0", "react-native-screens": "~4.11.1", "react-native-web": "^0.20.0" }, "devDependencies": { "jest-expo": "~53.0.0", "react-test-renderer": "19.0.0", "typescript": "~5.8.3" } }
想请教的问题
- 这是不是Expo 53/RN 0.79与RevenueCat、Google Sign-In之间的已知兼容性问题?
- 我需要降级到SDK 52才能解决,还是有适配SDK 53的可行方案?
- 这个问题会不会和这些第三方库在iOS上展示模态框/浮层的实现方式有关?
如果有正在SDK 53环境下使用RevenueCat付费墙或Google Sign-In的朋友,欢迎分享你的经验或解决方案,非常感谢!
内容来源于stack exchange
相关产品推荐
相关产品推荐

