Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/191.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在Android上获得联系人的姓名列表?_Java_Android_Eclipse_Android Contacts - Fatal编程技术网

Java 如何在Android上获得联系人的姓名列表?

Java 如何在Android上获得联系人的姓名列表?,java,android,eclipse,android-contacts,Java,Android,Eclipse,Android Contacts,可能重复: 我只需要安卓设备联系人列表中的名+姓的列表。应该很简单,但我找不到任何基本代码 只是在寻找: Steve Smith Joe Shmo Blah Davis 等等。所有这些都来自用户手机上的联系人。我已经补充说: <uses-permission android:name="android.permission.READ_CONTACTS" /> 公共列表getFullContactName(){ 列表名称=新列表(); 字符串[]投影=新字符串[]{Data.

可能重复:

我只需要安卓设备联系人列表中的名+姓的
列表。应该很简单,但我找不到任何基本代码

只是在寻找:

Steve Smith
Joe Shmo
Blah Davis
等等。所有这些都来自用户手机上的联系人。我已经补充说:

<uses-permission android:name="android.permission.READ_CONTACTS" /> 

公共列表getFullContactName(){
列表名称=新列表();
字符串[]投影=新字符串[]{Data.DATA2,Data.DATA3};
字符串,其中=Data.MIMETYPE+“=”+StructuredName.CONTENT\u ITEM\u TYPE+”;
Uri=Data.CONTENT\u Uri;
ContentResolver ContentResolver=context.getContentResolver();
//进行查询。
Cursor Cursor=contentResolver.query(uri,
投影,//返回哪些列
其中,//返回哪些行
null,//选择参数(无)
//将结果按名称升序排列
无效);
字符串firstName,LastName;
while(cursor.moveToNext()){
firstName=cursor.getString(cursor.getColumnIndex(Data.DATA2));
lastName=cursor.getString(cursor.getColumnIndex(Data.DATA3));
name.add(firstName+“”+lastName);
}
cursor.close();
游标=空;
返回名称;
}

请参见“谢谢”,但这似乎在列表中添加了更多联系人,而不仅仅是我手机应用程序中的联系人。有没有办法只获取我手机应用程序中出现的联系人?如果手机应用程序指的是本机联系人应用程序,那么这段代码将从中获取联系人。
    public List<String> getFullContactName(){

    List<String> name = new List<String>();

    String[] projection = new String[] {Data.DATA2, Data.DATA3};
    String where = Data.MIMETYPE + "='" + StructuredName.CONTENT_ITEM_TYPE + "'";
    Uri uri = Data.CONTENT_URI;

    ContentResolver contentResolver = context.getContentResolver();
    // Make the query. 
    Cursor cursor = contentResolver.query(uri,
                             projection, // Which columns to return 
                             where,       // Which rows to return
                             null,       // Selection arguments (none)
                             // Put the results in ascending order by name
                             null);

    String firstName, LastName;
    while (cursor.moveToNext()) {

        firstName = cursor.getString(cursor.getColumnIndex(Data.DATA2));
        lastName = cursor.getString(cursor.getColumnIndex(Data.DATA3));
name.add(firstName + " " + lastName);           
    }

    cursor.close();
    cursor = null;
    return name;
}