Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/207.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
Android 是否从sms表中获取发件人的联系人姓名?_Android - Fatal编程技术网

Android 是否从sms表中获取发件人的联系人姓名?

Android 是否从sms表中获取发件人的联系人姓名?,android,Android,我正在使用以下信息从收件箱中获取短信 ContentResolver cr = getContentResolver(); Cursor cur = cr.query(Uri.parse("content://sms"), null,null,null, null); DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy"); cursor_count=cur.getCount();

我正在使用以下信息从收件箱中获取短信

ContentResolver cr = getContentResolver();
    Cursor cur = cr.query(Uri.parse("content://sms"), null,null,null, null);        
    DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");

     cursor_count=cur.getCount();

    if(cur.moveToFirst())
    {           
        do {

            sender.add(cur.getString(2));

            msg.add(cur.getString(11));
            date.add(formatter.format(Long.parseLong(cur.getString(4))));
        } while (cur.moveToNext());
我从地址字段中获取此人的地址,但如果存储在我的联系人中,我还想获取发件人的联系人姓名。
person字段总是返回null,为什么?

请尝试此代码

 String contact=address;
                           Uri uri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI, Uri.encode(address));  
                           Cursor cs= context.getContentResolver().query(uri, new String[]{PhoneLookup.DISPLAY_NAME},PhoneLookup.NUMBER+"='"+address+"'",null,null);

                           if(cs.getCount()>0)
                           {
                            cs.moveToFirst();
                            contact=cs.getString(cs.getColumnIndex(PhoneLookup.DISPLAY_NAME));
                           } 
试试这个代码

 String contact=address;
                           Uri uri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI, Uri.encode(address));  
                           Cursor cs= context.getContentResolver().query(uri, new String[]{PhoneLookup.DISPLAY_NAME},PhoneLookup.NUMBER+"='"+address+"'",null,null);

                           if(cs.getCount()>0)
                           {
                            cs.moveToFirst();
                            contact=cs.getString(cs.getColumnIndex(PhoneLookup.DISPLAY_NAME));
                           } 

无法导入PhoneLookup??地址是联系人号码。contact=cur.getString(2);或contact=cur.getString(“地址”);请提供完整的工作代码或示例,因为我不知道在获取所有短信日志时将此代码准确放置在何处…请将此代码放置在您接收新短信的广播接收器中,获取号码(地址)并继续使用我的代码。希望您能够导入电话查找??地址是联系人号码。contact=cur.getString(2);或contact=cur.getString(“地址”);请提供完整的工作代码或示例,因为我不知道在获取所有短信日志时将此代码准确放置在何处…请将此代码放置在您接收新短信的广播接收器中,获取号码(地址)并继续使用我的代码,希望您能收到