1

Objective-C ライブラリで Google が提供する OAuth2 API に手を出しています。

とにかく、ログインした人をアプリに記憶させる方法を理解するのに苦労しています。以下を使用して認証が正常に機能しました。

以下のメソッドを呼び出して Google から OAuth ビュー コントローラーを提示すると、ユーザーがサインインし、認証されます。ただし、アプリを再起動するたびに、認証されていないかのようにログイン画面が再度実行されます。私が理解しているように、最近サインインしたユーザーを認識できるように、ある種のキーチェーン/トークン記憶を用意する必要があります。

しかし、どのように?利用可能な小さなドキュメントからは解決できません。

-(void)authenticateUserFromViewController:(UIViewController *)viewController
{
    GTMOAuth2ViewControllerTouch *authViewController = [[GTMOAuth2ViewControllerTouch alloc] initWithScope:kGTLAuthScopeYouTube
                                                                clientID:kClientID
                                                            clientSecret:kClientSecret
                                                        keychainItemName:kKeychainItemName
                                                                delegate:self
                                                        finishedSelector:@selector(viewController:finishedWithAuth:error:)];

    [viewController.navigationController pushViewController:authViewController animated:YES];
}

-(void)viewController:(GTMOAuth2ViewControllerTouch *)viewController finishedWithAuth:(GTMOAuth2Authentication *)auth error:(NSError *)error
{
    if (error != nil)
    {
        // Authentication failed
        NSLog(@"Failed to authorise");
    }
    else
    {
        // Authentication succeeded
        NSLog(@"Authorised");
    }
}
4

1 に答える 1

1

私は Objective-C ライブラリに詳しくありませんが、Google リファレンスのこの部分が役立つかもしれません。認証トークンの使用方法と、ユーザーがアプリを再起動したときのキーチェーンの処理方法について説明します。

于 2013-07-15T18:33:19.180 に答える