Android アプリからの App Engine に対する認証の Nick のチュートリアルに従いました。
私はすでにトークンを持っています。このトークンを使用して、android webview で appengine サイトを開くにはどうすればよいですか? つまり、example.appspot.com などの webapp があり、ネイティブ android パーツでの認証後にこれを android webview で開きたいということです。
これは Nick のチュートリアルの一部です。
private class GetCookieTask extends AsyncTask<String, Void, Boolean> {
protected Boolean doInBackground(String... tokens) {
try {
// Don't follow redirects
http_client.getParams().setBooleanParameter(ClientPNames.HANDLE_REDIRECTS, false);
HttpGet http_get = new HttpGet("https://example.appspot.com/_ah/login?continue=http://localhost/&auth=" + tokens[0]);
HttpResponse response;
response = http_client.execute(http_get);
if(response.getStatusLine().getStatusCode() != 302)
// Response should be a redirect
return false;
for(Cookie cookie : http_client.getCookieStore().getCookies()) {
if(cookie.getName().equals("ACSID"))
return true;
}
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
http_client.getParams().setBooleanParameter(ClientPNames.HANDLE_REDIRECTS, true);
}
return false;
}
protected void onPostExecute(Boolean result) {
new AuthenticatedRequestTask().execute("http://example.appspot.com/home");
}
}