複数のオペレーションを実行している場合、すべての HTTP メッセージを送受信する時間によって、アプリの動作が遅くなり、応答しなくなる可能性があります。バッチ リクエストを使用すると、1 つの HTTP リクエストで複数のオペレーションを実行できます。基本的な考え方は、連絡先フィードを作成し、実行するオペレーションごとにエントリを追加することです。
バッチ リクエストは一度に 100 件のオペレーションに制限されています。バッチ オペレーションの詳細については、Google Data Protocol のバッチ処理をご覧ください。メールアドレスの予測入力と連絡先マネージャーに変更内容が反映されるまでには、最長で 24 時間ほどかかることがあります。
次のコードサンプルは、2 つの共有コンタクトを作成するバッチ リクエストを示しています。バッチ リクエストを使用して、コンタクトのクエリ、更新、削除を行うこともできます。更新エントリと削除エントリでは、オプティミスティック コンカレンシティが機能するために編集リンクが必要です。
<?xml version='1.0' encoding='UTF-8'?> <feed xmlns='http://www.w3.org/2005/Atom' xmlns:gContact='http://schemas.google.com/contact/2008' xmlns:gd='http://schemas.google.com/g/2005' xmlns:batch='http://schemas.google.com/gdata/batch'> <category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/g/2008#contact' /> <entry> <batch:id>1</batch:id> <batch:operation type='insert' /> <category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/g/2008#contact'/> <gd:name> <gd:givenName>FIRST_NAME </gd:fullName> <gd:familyName>LAST_NAME </gd:fullName> </gd:name> <gd:email rel='http://schemas.google.com/g/2005#home' address='EMAIL_ADDRESS ' primary='true'/> </entry> <entry> <batch:id>2</batch:id> <batch:operation type='insert' /> <category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/g/2008#contact'/> <gd:name> <gd:givenName>FIRST_NAME </gd:fullName> <gd:familyName>LAST_NAME </gd:fullName> </gd:name> <gd:email rel='http://schemas.google.com/g/2005#home' address='EMAIL_ADDRESS ' primary='true'/> </entry> </feed>
次のように置き換えます。
FIRST_NAME
: 共有する連絡先の名前(例: Alex)。LAST_NAME
: 共有する連絡先の姓(例: Kim)。EMAIL_ADDRESS
: 共有する連絡先の優先メールアドレス(例: alk@gmail.com)。