아직 응용 프로그램을 설치하지 않았다면 Google developer console에 응용 프로그램을 설치하십시오. 당신이 Cocoapods을 사용하여 구성하려는 경우
, 당신은 단지 Podfile을 생산해야합니다
이
target 'swiftsignin' do
pod 'googleplus-ios-sdk'
end
그런 다음 프로젝트가 들어있는 폴더에서 pod install
를 실행하고 생성 project.xcworkspace를 엽니 다.
SDK 만 사용하여 구성하는 경우 download the Google+ SDK을 프로젝트에 포함하십시오.
첫 번째 부분은 프로젝트에 Obj-C 파일을 추가하여 브리지 헤더를 강제로 만드는 것입니다. 브리징 헤더 내에서 Google+ 라이브러리를 포함하십시오.
// example bridging header...
#ifndef swiftsignin_Bridging_h
#define swiftsignin_Bridging_h
#import <GooglePlus/GooglePlus.h>
#import <GoogleOpenSource/GoogleOpenSource.h>
#endif
다음은 코드에 있습니다.의 ViewController는 객체에 로그인 - 더를 구성합니다
// Configure the sign in object.
var signIn = GPPSignIn.sharedInstance()
signIn.shouldFetchGooglePlusUser = true
signIn.clientID = kClientId
signIn.shouldFetchGoogleUserEmail = toggleFetchEmail.on
signIn.shouldFetchGoogleUserID = toggleFetchUserID.on
signIn.scopes = [kGTLAuthScopePlusLogin]
signIn.trySilentAuthentication()
signIn.delegate = self
물론, kClientId
는 클라이언트 ID를 가리 키도록 어딘가에 정의 될 필요가있다. 앱 정보에서
// Added to handle the Authorization code returned from sign-in.
func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject?) -> Bool {
return GPPURLHandler.handleURL(url, sourceApplication: sourceApplication, annotation: annotation)
}
: 앱 위임에서
, 당신은 인증 코드를 받아들 때의 OAuth 2.0 인증 단계 완료 및 승인 라이브러리에 전달 오픈 URL 핸들러를 추가해야합니다. plist, 귀하의 애플 리케이션 번들 이름으로 설정된 구성표와 식별자를 가지고 URL 처리기를 추가합니다.
나는 당신을 위해 도움이 될 a demo Google+ Sign-in Swift app on GitHub을 만들었습니다.
두 번째 포드 'Alamofire'를 추가하면 거의 동일한 동작을 보입니다. 오류 : 브리징 헤더를 가져 오지 못했습니다. – avgx
@avgx 브리징 헤더에 아무 것도 추가 할 필요가 없습니다. 나는 Alamofire를 CocoaPods를 통해서도 사용하고 있으며 실제로는 잘 작동합니다. – Isuru
8 개월 후 운이 좋았나요? – Melvin