我正在寻找一些初学者帮助,以便在Xcode 7.2中使用Swift实现Google登录库(我没有使用CocoaPods)。我遵循了此处列出的步骤:https://developers.google.com/identity/sign-in/ios/sdk/手动安装SDK。我已经添加了这里指定的所有声明链接框架和libz1.1.3.tbd文件。从这里开始,我没有在AppDelegate.swift文件中键入任何代码。
我已成功使用OAuth 2.0登录-谷歌向我发送了一封电子邮件,确认新设备已登录。当我访问"APP_NAME想要:"应用程序权限页面时,问题就出现了,用户应该在该页面找到单击允许按钮的选项。在这里,它不允许我向下滚动以在模拟器中找到按钮。
我只修改了以下两个文件:
GSignIn桥接标头.h:
#import <GoogleSignIn/GoogleSignIn.h>
ViewController.swift
import UIKit
class ViewController: UIViewController, GIDSignInDelegate, GIDSignInUIDelegate {
@IBOutlet weak var signInButton: GIDSignInButton!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
GIDSignIn.sharedInstance().delegate = self
GIDSignIn.sharedInstance().uiDelegate = self
GIDSignIn.sharedInstance().clientID = "(my.correct.clientID)"
GIDSignIn.sharedInstance().scopes.append("https://www.googleapis.com/auth/plus.login")
GIDSignIn.sharedInstance().scopes.append("https://www.googleapis.com/auth/plus.me")
GIDSignIn.sharedInstance().signInSilently()
}
func signIn(signIn: GIDSignIn!, didSignInForUser user: GIDGoogleUser!, withError error: NSError!) {
if let err = error {
print(error)
}
else {
performSegueWithIdentifier("idSegueContent", sender: self)
}
}
func signIn(signIn: GIDSignIn!, didDisconnectWithUser user: GIDGoogleUser!, withError error: NSError!) {
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
加载模拟器时显示的相关错误为:
2016-01-11 18:19:44.045 GSignIn〔10378:448732〕找不到支持iPhone Portrait PhonePad键盘类型5的键盘;使用3561727473_Portrait_iPhone-Complex-Pad_Default
这是一个简单的修复方法。我将屏幕旋转到横向,然后再次旋转到纵向,以显示"允许"按钮,但不知道最初是什么原因导致了这个问题。