`

【Android】Android 联系人数据库浅析之通话记录

阅读更多
1. 删除通话记录



2.

       负责存放呼叫记录的内容提供者源码在 ContactsProvider 项目下:

       源码路径:

       com/android/providers/contacts/CallLogProvider.java

     

       使用到的数据库在:

       /data/data/com.android.providers.contacts/databases/contacts2.db

       表名:calls

     

       呼叫记录有三种类型:

       来电:CallLog.Calls.INCOMING_TYPE (常量值:1)

       已拨:CallLog.Calls.OUTGOING_TYPE(常量值:2)

       未接:CallLog.Calls.MISSED_TYPE(常量值:3)

     

       查看源码中的声明:

              <provider android:name="CallLogProvider"

                   android:authorities="call_log"

                   android:syncable="false" android:multiprocess="false"

                   android:readPermission="android.permission.READ_CONTACTS"

                   android:writePermission="android.permission.WRITE_CONTACTS">

               </provider>

3.需要声明的权限

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

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



4. 系统的通话记录,是通过 ContentProvider 来对外共享的



5. Uri

       CallLog.Calls.CONTENT_URI : 等价于:Uri.parse("content://call_log/calls");

6. 查询出所有记录

       ContentResolver resolver = getContentResolver();

       resolver.query(CallLog.Calls.CONTENT_URI, null, null, new String[]{"15101689022"}, null);

     

7. 查询某一个联系人的所有记录(按电话号码)

       resolver.query(CallLog.Calls.CONTENT_URI, null, "number=?", new String[]{"15101689022"}, null);



8. 查询某一个联系人的所有未接电话记录(按电话号码)

       resolver.query(CallLog.Calls.CONTENT_URI, null, "number=? and type=3", new String[]{"15101689022"}, null);
分享到:
评论

相关推荐

    Android特点及用户体验要素浅析

    Android特点及用户体验要素浅析Android特点及用户体验要素浅析Android特点及用户体验要素浅析Android特点及用户体验要素浅析Android特点及用户体验要素浅析

    浅析数据库之效能——MYSQL数据库作用与技巧.pdf

    “浅析数据库之效能——MYSQL数据库作用与技巧” 概述:本文档旨在对MySQL数据库的效能和技巧进行浅析,涵盖了 MySQL 数据库的基本概念、数据类型、数据表、数据操作、系统管理命令等方面的知识点。 一、MySQL...

    Android通过WebService连接SQLServer浅析.pdf

    Android 作为移动操作系统,已经成为当今最流行的移动平台之一,而 SQL Server 作为关系型数据库管理系统,广泛应用于企业级数据库管理中。随着移动设备的普及,Android 应用程序需要与后台数据库进行交互,以实现...

    Android嵌入式系统架构及内核浅析_王茜

    Android嵌入式系统架构及内核浅析的知识点 一、Android系统概述 Android是Google公司推出的基于Linux平台的开源手机操作系统,它不仅包括操作系统本身,还整合了中间件、用户界面和应用程序,旨在消除移动产业创新...

    Android嵌入式系统架构及内核浅析

    ### Android嵌入式系统架构及内核浅析 #### 一、Android系统平台架构概述 Android作为一款由Google公司开发的开源操作系统,以其强大的功能、灵活性以及广泛的适用性,在嵌入式领域得到了广泛的应用。该系统不仅...

    浅析Android手机传感器机制及应用设计举例.pdf

    《浅析Android手机传感器机制及应用设计举例》这篇文章主要探讨了Android智能手机中传感器的工作机制以及如何利用这些传感器进行应用设计。Android系统为开发者提供了丰富的传感器接口,使得开发者能够充分利用手机...

    Android嵌入式系统架构及内核浅析.pptx

    Android嵌入式系统架构及内核浅析 Android嵌入式系统架构是指嵌入式系统的构成方式和组织结构,包括硬件和软件两部分。Android嵌入式系统架构主要由Linux内核、Android运行时(ART)和应用程序框架三部分组成。...

    Android框架浅析之锁屏(Keyguard)机制原理

    ### Android框架浅析之锁屏(Keyguard)机制原理 #### 一、锁屏界面的组成 锁屏(Keyguard)是Android系统中的一个重要组成部分,它主要用于保护用户的隐私数据不被未授权访问。锁屏功能主要由两个部分组成:解锁...

    浅析oracle数据库与BD2数据库

    ### 浅析Oracle数据库与DB2数据库 #### 一、引言 在当前的企业级应用环境中,数据库管理系统(DBMS)扮演着至关重要的角色。Oracle数据库与IBM的DB2数据库作为市场上两大主流的关系型数据库系统,各有其独特的优势...

    Android 4.4 Kitkat Phone工作流程浅析(十)__"通话显示"查询流程 图片资源

    在Android 4.4 KitKat系统中,"通话显示"查询流程是一个关键的功能,它涉及到用户界面如何正确地展示联系人或来电者的信息。在这个专题中,我们将深入探讨这一过程,重点关注`displayName`的获取机制,这是显示联系...

    Android aidl Binder框架浅析

    **Android aidl Binder框架浅析** 在Android系统中,服务间的通信是通过Binder机制实现的,它是Android系统中进程间通信(IPC)的核心组件。Binder框架允许不同进程间的对象互相调用方法,使得数据和操作可以在不同...

    Redis架构下的MySQL数据库性能提升浅析.pdf

    Redis 架构下的 MySQL 数据库性能提升浅析 I. Redis 架构简介 Redis 是一个基于 key-value 的高速缓存系统,具有性能高、数据类型丰富、复杂度低以及优化部分 bug 的优点。在互联网时代,快速开发是一个不变的需求...

    Android防止内存溢出浅析.zip

    以下是对Android防止内存溢出的深入浅析: 1. **Android内存管理机制** - **Dalvik/ART虚拟机**:Android系统使用Dalvik或ART虚拟机执行应用程序,它们都有自己的内存管理策略。 - **堆内存**:Java对象主要存储...

    安卓Android源码——防止内存溢出浅析.zip

    本篇文章将深入浅析Android源码中的内存管理机制,以及如何预防和处理内存溢出问题。 首先,我们需要理解Android应用的内存结构。Android系统的内存分为堆(Heap)和栈(Stack)。栈主要存放方法的局部变量,而堆则...

    Android23SD卡挂载流程浅析.doc

    Android23SD卡挂载流程浅析.doc

    数据库查询优化浅析

    数据库查询优化浅析,数据库详细解说,图解

    Android23SD卡挂载流程浅析.docx

    ### Android 2.3 SD卡挂载流程浅析 #### 一、概述 在Android 2.3系统中,对于外部存储设备如SD卡的管理采用了一种较为成熟且自动化的机制。当用户将SD卡插入设备时,系统能够自动识别并完成挂载操作,使用户可以...

    电路板新型号小批量试产评估系统数据库浅析.pdf

    1. 电路板新型号试产评估系统的必要性与目的:文档介绍了印刷电路板(PCB)新型号小批量试产评估系统数据库的重要性。其核心目的是为了方便跟踪新型号小批量试产状况,并通过历史数据的查询与汇总,为后续大批量生产...

Global site tag (gtag.js) - Google Analytics