ワンクリックでメールとカレンダーを同期するアプリを作成しようとしています。このフォーラムを調べた後、いくつかの良いヒントを見つけ、最初の Google アカウントを取得して同期を開始する短いテスト アプリを作成しました。
コードはこれまでのところ機能していますが、現在は連絡先のみが同期されています!
AccountManager am = AccountManager.get(this);
Account[] acc = am.getAccountsByType("com.google");
Account account = null;
if (acc.length > 0) {
account = acc[0];
Bundle extras = new Bundle();
extras.putBoolean(ContentResolver.SYNC_EXTRAS_EXPEDITED, true);
extras.putBoolean(ContentResolver.SYNC_EXTRAS_MANUAL, true);
ContentResolver.requestSync(account, ContactsContract.AUTHORITY,
extras);
}
メソッド requestSync はパラメーターとして「権限」を取り、現在は「ContactsContract.AUTHORITY」を使用しています。これが、連絡先のみを同期する理由だと思います。私の質問は、メールとカレンダーのみを同期するために使用しなければならない認証文字列を知っている人はいますか? "null" が権限として使用される場合、3 つすべて (cal、連絡先、およびメール) が同期されます
public static void requestSync (Account account, String authority, Bundle extras)
前もって感謝します!!