Google Health 用のアプリを開発して公開しました。ここで、ユーザー名とパスワードを尋ねることで、毎回 Gmail アカウントにログインすることを避けたいと考えています。これを行うために、次のオプションを使用できると聞きました。1. OAuth 2. アカウント マネージャー 3.
OAuth の問題は、Android -> Web App -> Health パスを経由することです。そのため、Web アプリも開発する必要がありますが、今はやりたくありません。
アカウントマネージャーを使用しようとしています。これは、アカウントのリストと選択したアカウントの有効なauthTokenを取得できるコードです。
AccountManager mgr = AccountManager.get(getApplicationContext());
System.out.println("Got account manager");
Account[] accts = mgr.getAccounts();
}
Account acct = accts[0];
AccountManagerFuture<Bundle> accountManagerFuture = mgr.getAuthToken(acct, "android", null, this, null, null);
Bundle authTokenBundle = accountManagerFuture.getResult();
System.out.println("Account name "+accts[0].name);
String authToken = authTokenBundle.get(AccountManager.KEY_AUTHTOKEN).toString();
System.out.println("Got token:"+authToken);
しかし今、このトークンを使用して健康データにアクセスする方法について混乱しています。人口統計フィードを取得するために、次のコードを使用しました。ここでは、アプリケーションにログインするユーザーを明示的に作成しました。
String queryURL = "https://www.google.com/health/feeds/profile/ui/" + profileId +"/-/DEMOGRAPHICS";
getDemoGrInfoQuery = new Query(new URL(queryURL));
Feed dempGrResultFeed;
globals = new Globals();
dempGrResultFeed = healthService.query(getDemoGrInfoQuery, Feed.class);
そのため、URL を使用してフィードを取得していました。
そして今、ログイン プロセスをスキップし、上記の authToken を使用してフィードを取得したいと考えています。これはどのように行うことができますか?
どんな助けでも本当に感謝します!!! 前もって感謝します、