Android 从通话记录屏幕中获取条目

2023-12-02

我已经能够使用从互联网上获得的以下代码访问手机的通话记录屏幕。是否可以通过单击获取单个条目的条目详细信息,例如号码、通话时间等?

Intent showCallLog = new Intent();
    showCallLog.setAction(Intent.ACTION_VIEW);
    showCallLog.setType(CallLog.Calls.CONTENT_TYPE);
    startActivity(showCallLog);

您不能使用意图从日志中选择单个条目。

但是您可以从数据库获取所有信息并将它们显示到dialog list然后选择任意contact你要。

检查下面的代码它是如何工作的。

Note:在清单中添加权限,如果您的OS is 6.0 or greater然后得到runtime permission来自用户如何here.

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

public class MainActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Button ContactPickBtn = (Button) findViewById(R.id.btnPick);
        ContactPickBtn.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                String[] strFields = {android.provider.CallLog.Calls._ID,
                        android.provider.CallLog.Calls.NUMBER,
                        android.provider.CallLog.Calls.CACHED_NAME,};
                String strOrder = android.provider.CallLog.Calls.DATE + " DESC";
                // Make you have call logs permissions
                // if your os is 6.0 get call log permission at runtime.
                final Cursor cursorCall = getContentResolver().query(
                        android.provider.CallLog.Calls.CONTENT_URI, strFields,
                        null, null, strOrder);

                AlertDialog.Builder builder = new AlertDialog.Builder(
                        MainActivity.this);
                builder.setTitle("Pick a contact");
                android.content.DialogInterface.OnClickListener listener = new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialogInterface,
                                        int item) {
                        cursorCall.moveToPosition(item);
                        Toast.makeText(
                                MainActivity.this,
                                cursorCall.getString(cursorCall
                                        .getColumnIndex(android.provider.CallLog.Calls.NUMBER)),
                                Toast.LENGTH_LONG).show();
                        cursorCall.close();
                        return;
                    }
                };
                builder.setCursor(cursorCall, listener,
                        android.provider.CallLog.Calls.CACHED_NAME);
                builder.create().show();
            }
        });
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android 从通话记录屏幕中获取条目 的相关文章

  • 使用匕首柄作为依赖注入来处理多个改造客户端?

    我想在我的 android 应用程序中使用两个不同的后端 具有不同的响应格式 我使用 hilt 作为依赖注入 并对网络调用进行改造 这非常适合工作 因为我已经添加了第二个服务器网络文件和应用程序模块 所以它给了我错误 该错误列在最后 我需要
  • 如何通过代码检测Android上的表情符号支持

    通过代码 我可以制作一个按钮 将这 3 个表情符号插入到文本中 不过 在许多手机上 当用户单击按钮时 问题是 显示为 X X X 或者更糟糕的是 它只显示三个空白空间 我想在无法正确显示表情符号的 Android 设备上禁用并隐藏我自己的内
  • Kotlin Android Firebase 数据库哈希映射转换为类

    我正在尝试从 firebase 数据库获取数据 断点显示它正在获取数据 但看起来我没有正确地将其分配给我的班级 这会导致此异常 java lang ClassCastException 无法将 java util HashMap 转换为 班
  • Android Studio Canary 3.4 Canary 4:错误:功能插件不支持variant.getApplicationId()

    自从我在新版本上更新了我的项目以来Android Studio 3 4 金丝雀 4 gradle 同步失败 因为 ERROR variant getApplicationId is not supported by feature plug
  • 清晰的图标 清晰的 Android 应用程序

    你好 下午好 关于如何提高图标的 png 质量 有什么想法吗 我使用了 Android 开发者页面上的套件 但我无法获得清晰的图像 我的意思是非常清晰 我是否需要以不同的方式加载此图标 而不仅仅是拖入我的布局 谢谢 我使用这个布局
  • 不使用eclipse安装Android模拟器

    如何在没有eclipse的电脑上安装android模拟器 android模拟器无需安装eclipse 只需下载 android sdk 并安装即可 安装android SDK之前必须先安装JDK 完成后安装成功 您将获得两个应用程序 SDK
  • 构建应用程序时出现 BufferOverflowException

    每次我想运行我的 Android 应用程序时 我都会收到错误 2013 11 02 13 05 36 Dex Loader Unable to execute dex java nio BufferOverflowException Che
  • 检测设备方向

    我需要检测 Android 设备方向变化 而无需手动处理传感器数据 同时保持活动方向坚持某个方向 onConfigurationChange不会起作用 因为会让我的活动不旋转 通过使用传感器数据来检测方向变化 我认为这是轮子的发明 因为 A
  • 片段活动中的 commitAllowingStateLoss()

    我的应用程序使用片段活动 它仅处于纵向模式 无法旋转屏幕 最初我使用的是commit 方法 但现在我计划不加区别地将这些更改为commitAllowingStateLoss 对于碎片活动 是否有任何理由不不加区别地执行此操作而不重新评估我使
  • 有没有办法创建 PWA(渐进式 Web 应用程序)的 Android 桌面小部件?

    我正在构建一个渐进式 Web 应用程序 有没有办法创建 Android 桌面小部件 None
  • Android 5 Lollipop 阴影方向或 y 偏移

    是否有可能改变 Y 偏移的阴影方向 现在我有以下布局
  • Android:从 PhoneGap 应用打开 Play 商店链接

    我想从我的phonegap 3 4 应用程序打开一个指向Google Play 商店的链接 呼唤market details id com google android apps maps导致 ActivityNotFoundExcepti
  • Grade Plugin 3-alpha1 输出文件导致错误

    我正在尝试将项目更新到 Android Studio 3 build gradle 文件中不再接受以下代码片段 applicationVariants all variant gt variant outputs each out gt d
  • Android - 检测视图上的双击和三次点击

    我一直在尝试构建一个可以检测双敲击和三敲击的敲击检测器 在我的努力失败后 我在网上搜索了很长时间以找到可以使用的东西 但没有运气 奇怪的是 像这样的图书馆如此稀缺 有什么帮助吗 你可以尝试这样的事情 尽管我通常建议不要使用三次点击作为一种模
  • Android:选择 EditField 上焦点上的所有文本

    我试图让 Android 在获得焦点时选择 EditText 字段中的所有文本 我在布局中使用此属性 在两个字段上 android selectAllOnFocus true 我不确定这是否相关 但为了将光标移动到第一个可编辑字段 前面 还
  • 带有工具提示的搜索栏 android

    Hi All 我正在尝试使用工具提示自定义 android 搜索栏 如给定的图像 有没有办法在搜索栏中添加带有拇指的文本视图 或任何其他想法 Thanks 我们可以通过拇指的界限来做到这一点 并在seekbar的progressChange
  • Android SDK WebView调用Activity

    我试图在单击 WebView 组件内的链接时启动活动 我的Webview已加载到里面Main java我想启动SubActivity java当点击网站内的链接时Main java 另外 如何将参数传递给此活动 Example inspec
  • FCM 主题是否适合更多用户?

    我对使用主题消息有点困惑 我的场景是根据通知触发一些作业 请帮助我更多地了解这一点 如果我们正在处理大量用户 则可以使用 FCM 主题向用户发送通知 我们可以只使用数据消息和主题消息吗 使用主题发送的消息是否保证送达 我在 FCM 文档中看
  • Retrofit 2.0:预期为 BEGIN_OBJECT,但在第 1 行第 1 列路径 $ [重复] 处为 STRING

    这个问题在这里已经有答案了 我在邮递员上传递了更新用户请求并获得了成功的响应 参见图片 现在当我尝试使用 Retrofit 2 在我的应用程序中执行相同操作时 出现错误 com google gson JsonSyntaxException
  • Android Webview隐私浏览

    我在我的 Android 应用程序中使用 webview 从多个站点获取一些网页 我对 webview 行为有一些疑问 webview 是否存储历史记录 cookie 表单自动填充信息 如果是的话 我们可以阻止它这样做吗 如果 Webvie

随机推荐

  • Android:NullPointerException 使用 SharedPreferences

    使用 SharedPreferences 此活动在启动时崩溃 首先我将发布活动代码 然后我将发布我的 LogCat 非常感谢你们 你们总是给予我们很大的帮助 活动代码 package com creativecoders gymbuddy
  • 在设置 {app} 之前获取 wpSelectDir 中的路径 Inno Setup

    当用户单击时 我想获取安装目录的路径Next 当我在wpSelectDirInno 设置 我需要检查路径 因为我需要验证路径 如果不正确 我不会让用户继续 我的问题是常数 app 尚未设置 因为它将在之后设置wpSelectDir我还在 U
  • 使用Python将日记文件拆分为多个文件

    我保留一份技术笔记的日记文件 每个条目都带有时间戳 如下所示 Monday 02012 05 07 at 01 45 20 PM This is a sample note Lorem ipsum dolor sit amet consec
  • 我可以在ironruby 中运行rubygems 吗?

    目前是否可以通过预发布的ironruby来运行rubygems 好像我必须设置一个环境变量才能找到它们 您已经能够在 IronRuby 下运行 ruby gems 有一段时间了 只需下载并安装最新的来自 codeplex 的 IronRub
  • CreateProcessAsUser 从服务和用户安全问题

    我有一个启动我的应用程序的 Windows 服务 该服务是一个调度程序 用于执行最终用户定义的一些自定义操作 它作为本地系统帐户运行 并将启动我的应用程序 有窗口 为此我使用函数登录用户 加载用户配置文件 创建进程为用户 这很完美但前提是用
  • 在 C 中查找未使用的枚举成员

    查找未使用的枚举成员的最快方法是什么 逐一注释掉值是行不通的 因为我有近 700 名成员 并且想删除一些未使用的成员 我不知道有任何编译器警告 但你可以尝试splint静态分析工具 根据其文档 强调我的 Splint 检测常量 函数 参数
  • 我可以获得特定词典的完整 i18n 标签吗

    我面临 i18n 标签的问题 我的应用程序使用 Granite I18n get 函数在 js 前端读取一些 i18n 标签 整个字典下载为 libs cq i18n dict locale json 如 etc clientlibs fo
  • .forEach 与 Object.keys().forEach 在稀疏数组上的性能

    如果我错了请告诉我 array forEach callbackFunction 适用于稀疏数组 它执行callbackFunction不是针对零和数组长度之间的每个索引 而是仅针对实际的键in数组 而且 如果我错了请告诉我 这些键正是Ob
  • 如何将 Excel 文件导入 SQL Server? [关闭]

    Closed 这个问题需要多问focused 目前不接受答案 我的 Excel 文件中有数据 实际上XLSX格式 因为现在是 2020 年 我的要求是将此数据导入 SQL Server 如下所示 特别的 用例是向表提供测试数据 或少量数据的
  • 如果从 IE 安全选项禁用字体下载,font-awesome 在 IE 11 中不起作用

    我使用 Font awesome min css 在 IE 11 和 chrome 中运行良好 但我的客户要求是使用很棒的字体 即使我们禁用了从 IE Internet 选项下载字体 Internet options gt Security
  • 使用现有连接表的一对多关联

    我正在将使用 MariaDB 的现有应用程序的后端转换为使用 Sails v0 10 0 rc7 并且我一直在试图弄清楚如何在给定底层架构结构的情况下获取填充到角色模型中的角色的所有权限我必须与 目前有三个表用于获取角色及其关联的权限 工作
  • 使用 jQuery.get 时可以指定相对 URL 吗?

    我正在尝试像这样进行 ajax 调用 get home myInfo function data 我从以下页面调用它 http localhost myapp home index 当我尝试拨打上述电话时 它会转到 http localho
  • 触发 valueChanged 事件后从 JTable 中删除行

    我正在使用 ListSelectionListener 来更新我的JTextField countryTxt 来自所选行 import java awt BorderLayout import java awt event ActionEv
  • 解组 Parcelable 时出现问题

    我有一些实现的类可分包其中一些类作为属性相互包含 我正在将课程整理成Parcel在活动之间传递它们 将它们编组到包裹工作正常 但是当我尝试解组它们时 出现以下错误 AndroidRuntime E Caused by android os
  • Subversion 管理的项目的 xcopy ASP.NET 部署

    我目前正在使用 Subversion 来管理我的 ASP NET 网站 我发现每当我将网站上传到服务器时 我都会复制大量隐藏的 svn 文件夹以及其中可能包含的任何内容 有人有任何建议来避免这种情况吗 我并不特别想要生产服务器上的那些隐藏的
  • Java Keystore.getKey() 缓慢,同时密钥存储大小增加

    我正在使用 java 密钥存储来存储和检索加密密钥 当我的密钥存储大小很小时 它的工作速度更快 但是 一旦我的密钥存储大小增加 密钥存储操作就会变慢 我正在linux平台上工作 Java版本Jdk 1 8 和 safenet 作为提供商 我
  • 在 onPause、onStop 和 onDestroy 方法中调用超类方法的正确顺序是什么?为什么?

    我刚刚浏览了 Android 开发人员网站 刷新了 Activity 生命周期 在每个代码示例中 超类方法旁边都有一条注释 上面写着 始终首先调用超类方法 虽然这在创建半周期 onCreate onStart 和 onResume 中有意义
  • 在 WPF 应用程序中禁用 Aero Peek

    我想在我的 WPF 应用程序中禁用 Aero Peek 当用户将鼠标放在 显示桌面 按钮上时 我的应用程序必须可见 我使用这个 PInvoke 签名 Flags public enum DwmWindowAttribute uint DWM
  • React 如何有条件地覆盖 Material-UI 中的 TextField 错误颜色?

    我在用着React Material UI库 我想有条件地覆盖 TextField 的错误颜色 当错误属于某种类型时 我需要将 helperText 边框 文本和所需标记颜色更改为黄色 像这样的东西 否则 我想为所有其他类型的错误保留默认颜
  • Android 从通话记录屏幕中获取条目

    我已经能够使用从互联网上获得的以下代码访问手机的通话记录屏幕 是否可以通过单击获取单个条目的条目详细信息 例如号码 通话时间等 Intent showCallLog new Intent showCallLog setAction Inte