聪明文档网

聪明文档网

最新最全的文档下载
当前位置: 首页> Android操作通话记录

Android操作通话记录

时间:2018-07-02 12:33:48    下载该word文档

呼叫记录有三种类型:
来电:CallLog.Calls.INCOMING_TYPE (常量值:1
已拨:CallLog.Calls.OUTGOING_TYPE(常量值:2
未接:CallLog.Calls.MISSED_TYPE(常量值:3

查看源码中的声明:

android:authorities="call_log"
android:syncable="false" android:multiprocess="false"
android:readPermission="android.permission.READ_CONTACTS"
android:writePermission="android.permission.WRITE_CONTACTS">


需要声明的权限



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

Uri

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

查询出所有记录

ContentResolver resolver = getContentResolver();
resolver.query(CallLog.Calls.CONTENT_URI, null, null, new String[]{"151********"}, null);

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

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

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

resolver.query(CallLog.Calls.CONTENT_URI, null, "number=? and type=3", new String[]{"151********"}, null);

删除某联系人最近的一次来电

ContentResolver resolver = getContentResolver();
/* 这里涉及到内容提供者的知识,其实这里是直接在操作 Android 的数据库,十分痛苦 */
Cursor cursor = resolver.query(CallLog.Calls.CONTENT_URI, new String[]{"_id"}, "number=? and (type=1 or type=3)", new String[]{"151********"}, "_id desc limit 1");
if(cursor.moveToFirst()) {
int id = cursor.getInt(0);
resolver.delete(CallLog.Calls.CONTENT_URI, "_id=?", new String[] {id + ""});
}

免费下载 Word文档免费下载: Android操作通话记录

  • 29.8

    ¥45 每天只需1.0元
    1个月 推荐
  • 9.9

    ¥15
    1天
  • 59.8

    ¥90
    3个月

选择支付方式

  • 微信付款
郑重提醒:支付后,系统自动为您完成注册

请使用微信扫码支付(元)

订单号:
支付后,系统自动为您完成注册
遇到问题请联系 在线客服

常用手机号:
用于找回密码
图片验证码:
看不清?点击更换
短信验证码:
新密码:
 
绑定后可用手机号登录
请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系 在线客服