在iOS中响应本机google登录失败

我运行react-native升级来解决play store base 64问题。 Android运行正常,这是我面临的iOS唯一问题。运行该版本时,React本机google唱歌失败。

我已经运行了以下命令:

  • react-native-upgrade@0.59.1

  • rm -rf node_modules && npm i

  • 将google sdk 4.4.0升级到5.0.0,并且

  • cd ios && pod安装&& cd ..

这是错误:

1)'GIDSignIn'的可见@interface没有声明选择器'signInSilently'

[[GIDSignIn sharedInstance] signInSilently];

2)'GIDSignIn'的可见@interface声明选择器'hasAuthInKeychain'

RCT_REMAP_METHOD(isSignedIn,resolver:(RCTPromiseResolveBlock)resolve
                 rejecter:(RCTPromiseRejectBlock)reject)
{
  BOOL isSignedIn = [[GIDSignIn sharedInstance] hasAuthInKeychain];
  resolve([Nsnumber numberWithBool:isSignedIn]);
}

3)'GIDSignIn'的可见@interface没有声明选择器'handleURL:sourceApplication:annotation:'

+ (BOOL)application:(UIApplication *)application openURL:(NSURL *)url
  sourceApplication:(NSString *)sourceApplication annotation: (id)annotation {

  return [[GIDSignIn sharedInstance] handleURL:url
                             sourceApplication:sourceApplication
                                    annotation:annotation];
}

4)使用未声明的标识符'kGIDSignInErrorCodeNoSignInHandlersInstalled'

case kGIDSignInErrorCodeNoSignInHandlersInstalled:

请让我知道是否有人可以帮助我...谢谢!

zhaoshashaxiao 回答:在iOS中响应本机google登录失败

我不是专家并且完全理解,但是在了解了文档中的细节之后想出了自己的方法。

5.0.0中不推荐使用Point 4,因此请注释掉或删除它。 第1点和第2点需要在GoogleSignIn.h文件中输入,但根据文档,hasAuthInKeychain被hasPreviousSignIn取代,而signInSilently被hasPreviousSignIn取代。

您可以通过在GoogleSignIn.h文件中添加signInSilently条目和hasAuthInKeychain条目来解决该错误。

您可以在https://developers.google.com/identity/sign-in/ios/release中引用详细信息。

本文链接:https://www.f2er.com/3154270.html

大家都在问