2012-08-10 94 views
0

我需要获取我android应用程序中所有联系人的所有事件。在android中获取联系事件的详细信息

任何人都可以帮助我吗? 什么,我需要的地方的URI低于..

Cursor events = getContentResolver().query(xxxx,null,ContactsContract.CommonDataKinds.Email.CONTACT_ID + " = " + contactId, null, null); 
+0

@dilaraates你在那里编辑过什么? – Noundla 2012-08-10 10:52:30

+0

我添加新标签“光标”:D当您添加与您的问题或代码相关的标签时,也许更多的人会对您的问题感兴趣。 – dilaraates 2012-08-10 10:55:14

+0

@dilaraates你知道解决方案吗? – Noundla 2012-08-10 11:01:36

回答

0

试试这个方法,它应该工作。执行Log.d(tag, "Output here");来测试你的输出,但它应该工作。它在这里。

public void getEvent(String contactId) 
    { 
     final String[] projection = new String[] { 
       Event.CONTACT_ID, 
       Event.START_DATE, 
       //Event.TYPE, 
       Event.LABEL 
     }; 

     final String filter = Data.MIMETYPE + " = ? AND " + Data.CONTACT_ID + " = ? "; 
     final String parameters[] = {Event.CONTENT_ITEM_TYPE, contactId}; 

     Cursor cursor = context.getContentResolver().query(Data.CONTENT_URI, 
        projection, 
        filter, 
        parameters, 
        null); 

     if(cursor.moveToFirst()) 
     { 
      for(cursor.moveToFirst(); !cursor.isAfterLast(); cursor.moveToNext()) 
      { 
       final String contact_id = cursor.getString(cursor.getColumnIndex(Event.CONTACT_ID)); 
       final String startDate = cursor.getString(cursor.getColumnIndex(Event.START_DATE)); 
       //final String type = cursor.getString(cursor.getColumnIndex(Event.TYPE)); 
       final String label = cursor.getString(cursor.getColumnIndex(Event.LABEL)); 
      } 
     } 

    } 
相关问题