Google ドライブのドキュメントからコンテンツを取得する iOS アプリの実装に取り組んでいます。このドキュメントはすべてのクライアントで同じであり、ユーザーの Google アカウントから完全に分離されています。チュートリアルに従い、SDK for Xcode プロジェクトの使用方法に関するビデオを視聴しました。また、API コンソールで Google ドライブ アプリをセットアップし、そのサービス アカウントを作成しました。ここでの問題は、クライアントのスライドで、ユーザー認証の手順をスキップして、自分の Google アカウントにアクセスできないようにし、単にアプリ サービス アカウントに接続する方法です。
1328 次
2 に答える
2
Java (Android) ではサービス アカウントで SDK を使用できますが、iOS では使用できません。理由はわかりませんが、これが将来変わることを願っています。
今のところ、サービス アカウントとして機能するアプリケーションの Google アカウントにプログラムでログインする唯一の方法はハックです。アプリに一度ログインし、API から取得した認証トークンを保存する必要があります。次に、次のように再利用できます。
_driveService = [[GTLServiceDrive alloc] init];
GTMOAuth2Authentication *auth = [GTMOAuth2ViewControllerTouch authForGoogleFromKeychainForName:kKeychainItemName clientID:kClientID clientSecret:kClientSecret];
[auth setKeysForPersistenceResponseString:kDriveAPIToken];
_driveService.authorizer = auth;
Google によると、同時有効トークンの最大数に達しない限りトークンは変更されず、FIFO によってトークンがクリアされます (最も古い有効なトークンが無効になります)。
于 2014-10-23T15:47:12.663 に答える