AccountManager.getAuthTokenを使用して Android デバイス (クライアント側) から認証トークンを取得し、それを Zend_Gdata (サーバー側) 経由で再利用する必要があります。
カレンダー 'cl' authTokenTypeを使用すると、期待どおりに機能します。
Android ソース:
String calendarToken = getAuthToken(account, 'cl' ...
PHP ソース:
$token = // value retrieved via Android 'calendarToken'
$client = new Zend_Gdata_HttpClient;
$client->setClientLoginToken($token);
$gData = new Zend_Gdata($client);
$feed = $gData->getFeed("http://www.google.com/calendar/feeds/default/private/full");
これは機能しますが、Gmail ' mail ' authTokenTypeを使用する場合、物事はそれほどスムーズではありません
Android ソース:
String mailToken = getAuthToken(account, 'mail' ...
PHP ソース:
$token = // value retrieved via Android 'mailToken'
$client = new Zend_Gdata_HttpClient;
$client->setClientLoginToken($token);
$gData = new Zend_Gdata($client);
$feed = $gData->getFeed("https://mail.google.com/mail/feed/atom/");
これにより、「予期される応答コード 200、401 を取得しました。
さまざまなGoogle Data APIのガイドラインに従おうとしましたが、うまくいきませんでした