1
私は、デバイスのすべての連絡先を追加された順にソートしようとしています。 私は次のクエリを使用しています:私は点検した後、クエリすべての連絡先のタイムスタンプを取得する
のソート順にnull
かContactsContract.CommonDataKinds.Phone.CONTACT_STATUS_TIMESTAMP
を渡していますかそれはどんな違いを作っていない
Uri uri = ContactsContract.CommonDataKinds.Phone.CONTENT_URI;
String[] projection = new String[] {
ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME,
ContactsContract.CommonDataKinds.Phone.NUMBER,
ContactsContract.CommonDataKinds.Phone.CONTACT_STATUS_TIMESTAMP };
Cursor c = getContentResolver().query(uri, projection, null, null,
ContactsContract.CommonDataKinds.Phone.CONTACT_STATUS_TIMESTAMP);
、カーソルがすべてのタイムスタンプ列のnull
を持っています。これをやり遂げる方法はありますか、これで間違っていますか?
@ roberty-基準に応じて3つのリストにすべての連絡先を表示したい。だから私はすべての連絡先をどの連絡先がどのリストに来るべきかについてのフラグを持つdbに最初に追加しています。今すぐアプリケーションが再開したら、新しい連絡先が追加されたかどうかを確認するか、そうであればdbに追加する必要があります。とにかく私はそれを他の方法でやりましたが、連絡先についてどのように変化し、連絡先について話すときにどのような状態を意味するかを知りたいのです。 – noob
ステータスはあなたのアプリによってPeople/Contactsアプリに注入できます。デフォルトでは、あなたのGTalkステータスから取得すると信じています。 RawContactsとContactsの2種類の連絡先があります。連絡先は未処理の連絡先の集合です。新しいRaw Contactを追加すると、システムは再集計を行い、その新しく追加されたRaw Contactが既存のContactに属しているかどうかを調べることができます。これは、gmail、twitter、およびfacebookアカウントを持つ同じ人物に対して3つのエントリがないためです。このプロセス中に連絡先IDが変更される可能性があります。 – robertly
@roberty thnx私は理解しました – noob