android - 如何从Android中的电话号码中获取来电者的姓名

标签 android broadcastreceiver

我在 Android 工作,我想知道如何找出电话号码的联系人姓名。

BroadcastReceiver 我有这个:

String phonenr=intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER);

我需要此电话号码的联系人姓名(全名 - 名字 + 姓氏,如果有的话)。

谢谢!

最佳答案

你可以试试这个link

 Uri uri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI, Uri.encode(phoneNumber));
     resolver.query(uri, new String[]{PhoneLookup.DISPLAY_NAME} .....)

像这样使用下面的函数:

  Uri uri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI, Uri.encode("your receive phone number"));
  Cursor phones = getContentResolver().query(uri, new String[]{PhoneLookup.DISPLAY_NAME},null,null,null);
        while (phones.moveToNext())
        {
            //it returns contact name
            String name=phones.getString(phones.getColumnIndex(PhoneLookup.DISPLAY_NAME));
        }

关于android - 如何从Android中的电话号码中获取来电者的姓名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10279917/

相关文章:

android - 将 onlongclick 监听器添加到警报对话框

android - 在android中保持模块化——以一种好的方式划分资源

android - android 3.0+ 中的 ACTION_MEDIA_BUTTON 静态广播接收器

android - 从 ADB 安装后静态 BroadcastReceiver 不工作

android防止刷新改变方向

java - 捕获异常后,模拟器仍然显示 "Application has stopped unexpectedly "

android kiosk 应用程序每两小时重新启动一次

android - 创建的 BroadcastReceiver 在安装/卸载任何应用程序时显示应用程序名称和版本号?

android - 聆听应用程序被杀死并在它被杀死之前做一些事情

Android:如何知道设备何时锁定和解锁