AccountManager

うーん。こんなのがあるなんて。以前作ってみた Google の authToken を取得するナニは色々パラメータを設定して google と HTTP なやりとりをしてレスポンスを云々してようやく authToken なナニを取得してました。
が、今やこの authToken は内部的に取得する事が可能になっている模様。

とりあえず

google アカウントを元に Account なインスタンスが必要。

        Account account = new Account(mAccountName, "com.google");

で、その Account なインスタンスは置いといて AccountManager オブジェクトを Context なナニを元に取得。

        AccountManager accountManager = AccountManager.get(context);

後は以下で authToken を取得できる模様 (あれば、でしょうが)。

            AccountManagerFuture<Bundle> future =
                    accountManager.getAuthToken (account, AUTH_TOKEN_TYPE, false, null, null);
            Bundle bundle = future.getResult();
            authToken = bundle.getString(AccountManager.KEY_AUTHTOKEN);

AUTH_TOKEN_TYPE は例えば GAE だと "ah" なナニ。これ、chrometophone の AppENgineClient なクラスの getAuthToken なメソドでの処理なんですが、これはズルいなぁ。
あと getAuthToken に渡す account は Account なソレです。この AppEngineClient なクラスは掘削がいがあると言っても過言ではないかも。週末カーネルにするかこっちにするか迷うなぁ。