GData을 사용하면 gdata API와 상호 작용할 수있는 세션이나 자격 증명을 저장할 수있는 방법이 있습니까? 아니면 키 체인에 자격 증명을 수동으로 저장해야합니까? YouTube 업로드 API를 사용하고 있으며 매번 사용자 이름과 비밀번호를 입력 할 필요가 없도록하고 싶습니다. 사용자의 Google 로그인 세션을 자동으로 가져 오는 방법이 있다면 훨씬 좋습니다.iPhone 용 Google gdata api, 로그인 자격 증명 (사용자 이름 및 비밀번호) 또는 세션을 저장하는 방법은 무엇입니까?
2
A
답변
0
GTM OAuth는 최신 버전이지만 GData API는 setAuthorizer 메소드를 통해이를 지원합니다. 나는 내가 소스 코드에 뛰어들 때까지 그것을 알아 차리지 못했다.
//save to keychain
- (void)viewController:(GDataOAuthViewControllerTouch *)viewController
finishedWithAuth:(GDataOAuthAuthentication *)auth
error:(NSError *)error {
if (error != nil) {
// Authentication failed
} else {
[[self youTubeService] setAuthorizer:auth];
}
}
//check if authorized:
- (BOOL)isAuthorized
{
GDataOAuthAuthentication * auth = [GDataOAuthViewControllerTouch authForGoogleFromKeychainForName:kAppServiceName];
BOOL isSignedIn = [auth canAuthorize]; // returns NO if auth cannot authorize requests
if(isSignedIn) [[self youTubeService] setAuthorizer:auth];
return isSignedIn;
}
0
GTM Oauth 라이브러리 (http://code.google.com/p/gtm-oauth/)를 사용하는 경우 서비스 이름별로 키 체인에 액세스 토큰 정보를 저장하는 방법을 제공합니다 (예 : 'YouTubeAPI " 또는 뭔가).
또한 원시 사용자 이름/비밀번호를 사용하는 경우 세부 정보를 키 체인에 저장합니다. Sci-Fi Hi-Fi에는 과거에 사용했던 멋진 라이브러리 (예 : http://github.com/ldandersen/scifihifi-iphone)가 있습니다.
http://code.google.com/p/gdata-objectivec-client에있는 자료를 사용하고 있습니다. GTM은 이와 같이 작동합니다. 고마워. 고마워. – akaru
아무런 문제가 없지만 어떻게되는지 알려주세요. –