Androidアプリで扱うデータを外部のSpreadsheetに保存することを目的とします。
library
今回はGoogle API Client Library for Javaの1.3.1-alphaを使ってみます。とりあえず,プロジェクトに次の3つのjarファイルを参照するように設定いたしました。
- google-api-client-1.3.1-alpha.jar
- google-api-client-googleapis-1.3.1-alpha.jar
- dependencies/guava-r08.jar
認証
Spreadsheetなど扱う前に,アプリケーションへ認証を与えることが必要になります。 ここではOAuthを用いた認証を行います。具体的な手順は, OAuth 1.0a for Google API's JavaDocに記載されています。
まずは,temporary credentials token ("request token") を入手します。 installed application では signature method に "HMAC-SHA1",consumerKeyとclientSharedSecretに"anonymos"を使うように求められていますので,それに従います。
HttpTransport transport = new ApacheHttpTransport(); GoogleOAuthGetTemporaryToken temporaryToken = new GoogleOAuthGetTemporaryToken(); OAuthHmacsinger signer = new OAuthHmacSigner(); signer.clientSharedSecret = "anonymous"; temporaryToken.signer = signer; temporaryToken.displayName = appname; temporaryToken.consumerKey = "anonymous"; temporaryToken.scope = "https://spreadsheets.google.com/feeds/"; temporaryToken.transport = transport;
それでは,TemporaryTokenの値を入手してみます。
OAuthCredentialsResponse credentials = temporaryToken.execute();
if (credentials != null) { GoogleOAuthAuthorizeTemporaryTokenUrl temporaryTokenUrl = new GoogleOAuthAuthorizeTemporaryTokenUrl(); temporaryTokenUrl.template = "mobile"; temporaryTokenUrl.temporaryToken = credentials.token; // Uri uri = new Uri(temporaryTokenUrl.build()); Log.d(TAG, "temoraryTokenUrl: " + temporaryTokenUrl.build()); }
https://www.google.com/accounts/OAuthAuthorizeToken?btmpl=mobile&oauth_token=...some_oauth_token....
この次は,このURLをWebViewに表示させまして,アプリケーションの認証を行います。
No comments:
Post a Comment