1

連絡先を別のアカウントに保存できるアプリを Android マーケットで公開しています。このアプリを使用すると、ユーザーは連絡先を保存するアカウントを選択できます。しかし、Motorola ユーザーの多くは、使用可能なアカウントのリストで Exchange アカウントを使用できないと報告しています。

連絡先を保存できる同期アダプターを取得するために使用するコードを次に示します。

final Set<String> accountTypeSet = new HashSet<String>();

final SyncAdapterType[] syncAdapters = ContentResolver.getSyncAdapterTypes();
for( final SyncAdapterType syncAdapter : syncAdapters ) {
    if ( !syncAdapter.isKey
            && syncAdapter.isUserVisible()
            && syncAdapter.supportsUploading()
            && ContactsContract.AUTHORITY.equals( syncAdapter.authority ) )
    {
        accountTypeSet.add( syncAdapter.accountType );
    }
}

私が理解している限り、Motorola デバイスの Exchange アカウントは、このコードのいくつかの条件に違反しています。しかし、問題を再現できる Motorola デバイスはありません。私の意見では、Motorola Exchange のSyncAdapterType.authority値は とは異なる場合がありますContactsContract.AUTHORITY。しかし、それは仮定にすぎません。この問題の本当の理由は何ですか?

4

0 に答える 0