【问题标题】:get contact event details in android在android中获取联系人事件详细信息
【发布时间】:2012-08-10 10:45:08
【问题描述】:

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

谁能帮我解决这个问题? 我需要为下面放置 Uri..

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

【问题讨论】:

  • @dilaraates 你在那里编辑了什么?
  • 我添加新标签“光标”:D 当您添加与您的问题或代码相关的标签时,也许更多人会对您的问题感兴趣。
  • @dilaraates 你知道解决办法吗?
  • 其实我也不知道。我帮助您找到知道解决方案的人,但也许您可以检查这个问题。它将帮助您解决问题--stackoverflow.com/questions/4009309/…

标签: android cursor android-contacts


【解决方案1】:

试试这个方法,应该可以的。执行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));
            }
        }

    }

【讨论】:

    猜你喜欢
    • 2012-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-15
    • 2011-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多