在 Ios 中反应原生 Google 登录问题

Posted

技术标签:

【中文标题】在 Ios 中反应原生 Google 登录问题【英文标题】:React native Google Signin Issue in Ios 【发布时间】:2018-10-12 10:47:34 【问题描述】:

我正在将此库用于 Google 登录:react-native-google-signin

ios 中集成库后,在真实设备中运行时出现错误:

在 signalhandler.cc 文件中

No member named '__rip' in '__darwin_arm_thread_state64

注意:它在模拟器中运行良好。只有在真实设备上运行时才会出现错误。

【问题讨论】:

尝试删除node_modulesyarn install @PritishVaidya 没有工作得到同样的错误:( 确保您遵循该库文档中的确切程序 【参考方案1】:

当我尝试在物理设备上从 xcode 运行时遇到了这个问题...我在 github 上看到了这个解决方案,它对我有用 更改此行:

return (void*)context->PC_FROM_UCONTEXT;

return NULL;

【讨论】:

【参考方案2】:

当我试图在我的 iPhone X 上运行一个开箱即用的 React Native 应用程序时,我遇到了和你一样的错误。我正在使用 Xcode 10 在 MacBook Pro 上运行 Mojave。

我在模拟器中运行基本的 React Native 应用程序没有问题,但在物理设备上运行它时遇到了问题。在查看库时,我找不到 Nirmalsinh 动议的 RNGoogleSignin.xcodeproj

所以,经过一番挖掘,我找到了这个线程。 https://github.com/facebook/react-native/issues/16106

Xcode 10 和 React Native 似乎存在严重错误。

他们建议在第 78 行抛出错误并返回 null 并修复该错误。如下。

ucontext_t *context = reinterpret_cast<ucontext_t *>(ucontext_in_void);
return NULL;

不知道为什么该行会抛出错误或该上下文的实际用途,但返回 NULL 允许我在物理设备上编译它。

不知道这是否能解决您的问题,但它可能会帮助像我一样偶然发现此问题的其他人。

如果是因为它缺少 RNGoogleSignin.xcodeproj,那么需要另一种方法来添加该库,因为它在我的文件夹中。不幸的是,我不知道你在哪里可以找到它来安装它。

【讨论】:

【参考方案3】:

检查以下在 xCode 中需要执行的步骤:

1) 在库文件夹 RNGoogleSignin.xcodeproj 中是否存在。如果没有,则从节点模块文件夹中拖动。

2) 将 libRNGoogleSignin.a 库添加到 Build PhaseLink Binary 中。

希望它能解决您的问题。

【讨论】:

我无法在我的文件夹中找到“libRNGoogleSignin.a”。我错过了哪一步? 您是否将 RNGoogleSignin.xcodeproj 拖到您的项目中? 进入构建阶段 --> 链接二进制文件 --> libRNGoogleSignin.a 来自哪个文件夹? libRnGoogleSignin.a 没有显示在任何地方:(

以上是关于在 Ios 中反应原生 Google 登录问题的主要内容,如果未能解决你的问题,请参考以下文章

反应原生Apple登录卡在IOS的输入密码屏幕中?

广告未在 iOS 中展示 |反应原生

在 Google Play 的独立版本上反应原生地图崩溃

使用指数反应原生的 Facebook 登录

是否可以在同一个 iOS 应用中同时支持 Facebook 登录和 Google Plus 登录?

反应原生渲染 Facebook 登录