获取系统的通话记录 目前在真机测试 根据网上的一些获取对应的数据库路径,无法获得相应的数据库文件

要做一个回访记录的需求,主要是实现 打电话通话的时长

通过CTCallCenter 可以监听到 电话的相关状态 ,但是如果在打电话过程中,

1.自己双击home键,使得app运行后台 2.直接返回电话系统

这样会使得 CTCallCenter 无法继续监听

如果需要继续接听 需要自己先 让app回到主应用,然后在点击最上方电话块,继续接听电话

2. 直接拨打后 经测试时间5分钟 也可以监听到,所以在打电话的时候 实际是在当前app运行,没有退到后台

代码:

CTCallCenter 需要设置为属性 如果使用局部变量,便回失效

- (void)initCallCenter: (CTCallCenter *)callCenter {__weak typeof(self) weakSelf = self;callCenter.callEventHandler = ^(CTCall *call){if ([call.callState isEqualToString:CTCallStateDisconnected]){NSLog(@"挂断");
//            if (!_isManualStopPlay) [weakSelf play];self.str = [self.str stringByAppendingString:@"挂断  ,"];}else if ([call.callState isEqualToString:CTCallStateConnected]){NSLog(@"接通");self.str = [self.str stringByAppendingString:@"接通  ,"];}else if([call.callState isEqualToString:CTCallStateIncoming]){NSLog(@"呼入尚未接通");self.str = [self.str stringByAppendingString:@"呼入尚未接通  ,"];}else if ([call.callState isEqualToString:CTCallStateDialing]){NSLog(@"呼出尚未接通");self.str = [self.str stringByAppendingString:@"呼出尚未接通  ,"];}else{NSLog(@"未知");self.str = [self.str stringByAppendingString:@"未知  ,  "];}};
}
- (IBAction)handleCallButtonPress:(id)sender
{CTTelephonyNetworkInfo *networkInfo = [[CTTelephonyNetworkInfo alloc] init];NSString *code = [networkInfo.subscriberCellularProvider mobileCountryCode];if (code != nil) {[self callTelephone];return;}else {    // 无法呼叫}
}
- (void)callTelephone{UIWebView *webView = [[UIWebView alloc] init];[webViewloadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"tel:10086"]]];[[UIApplication sharedApplication].keyWindow addSubview:webView];//     第二种打电话方式
//    NSURL *phoneUrl = [NSURL URLWithString:[NSString  stringWithFormat:@"telprompt://%@",@"10086"]];
//    if ([[UIApplication sharedApplication] canOpenURL:phoneUrl]) {
//        [[UIApplication sharedApplication] openURL:phoneUrl];
//    }
}

打电话时长记录 CTCallCenter相关推荐

  1. 软考中级-软件设计师-视频学习时长记录

    软考中级资源:链接: https://pan.baidu.com/s/1LCtCGTCdE_E3UwK-ZhrTBA?pwd=nqn7 提取码: nqn7 复制这段内容后打开百度网盘手机App,操作更 ...

  2. php录音时长统计,音频app阅读时长统计分析

    描述 分析学习喜马拉雅app阅读时长统计机制,并应用到自己app中去 分析 使用抓包工具charles观测app统计发送时机,发现切换音频源,或本地缓存有阅读数据进入首页app时发送(nyx/v2/t ...

  3. 不要以工作时长论英雄,不要以加班加点为美德

    软件程序员在如今看来是一个既能挣钱又有工作保障的职业,但是,这种职业对你的精神健康却会造成巨大的伤害. 有两种事情几乎能让程序员疯掉. 一个是被人们称作「骗子综合征 (imposter syndrom ...

  4. Redis计数器统计小程序用户停留时长

    业务需求 统计小程序的用户停留时长 不需要实时统计,所以按照天为维度 使用Redis的hash形式存并使用计数器累加时长,凌晨定时持久化前一天的数据到DB 注:一些其它统计也可以使用此种方式来 使用R ...

  5. JavaScript 实现页面内时间实时倒计时 计时器内附完整文件欢迎调用(可用于抢购倒计时,记录恋爱纪念日总时长等)输出对应的天数小时分钟秒数

    JavaScript 实现页面内时间倒计时 计时器 可用于抢购倒计时,记录恋爱纪念日总时长等输出对应的天数小时分钟秒数 注意:在下一个文章中将公布一个纪念日成品代码,欢迎各位来学习(复制) 第一步:构 ...

  6. L版本通话记录里面显示的通话时长与实际不一致的问题

    [DESCRIPTION] SW Version:L0.L1 1. 问题1:通话记录里面显示的通话时长与实际不一致的问题. 2. 问题2:通话过程中去设置时间,通话计时时间会变的问题. [SOLUTI ...

  7. 准确记录用户观看视频内容时长

    文章目录 问题的产生 一.从最简单的开始 二.天真可爱法 三.录点法 四.打点法 五.暴力打点法 六.小结 七.大结 问题的产生 to be or not to be, that is a quest ...

  8. 睡眠实验记录:探索自己的最佳睡眠时长及方式,提高睡眠效率

    引言 良好的身体是一切的基础,睡眠习惯不好,导致在昏昏沉沉的状态下效率低下,而且长期以来对身体有较大的危害,笔者出现头疼以及恶心的症状,因此决定改掉不好的习惯.我坚信身体的各个方面是互相促进的,休息好 ...

  9. 【高效日程管理】基于iOS快捷指令自动化,这是一个记录长期目标、统计专注时长、记录健康数据(需要智能手环、手表)、并生成每日报告与自我总结的高效日程管理方式

    核心功能: 1.记录专注时长:分为学霸模式和普通模式,又有正计时和倒计时两种方式.学霸模式下禁止离开计时页面,否则算您结束任务或放弃任务.普通模式下可以离开计时页面,但结束后要进行签到.并且在您进行体 ...

最新文章

  1. Mask Rcnn训练自己的航拍数据集
  2. 丰田chr优惠5万_别克昂科威优惠5万?是否该考虑入手了呢?
  3. Java学习总结:5
  4. android 自定义控件TextInputSelectBox用法
  5. python电商项目源码_Python Django(WEB电商项目构建)
  6. C++实现线段树求区间和-区间查询
  7. Hibernate--使用xml配置映射关系
  8. MyEclipse 6.5GA 下载 + 汉化方法
  9. 萌新的Python练习实例100例(五)输入三个整数x,y,z,请把这三个数由小到大输出。
  10. RocketMQ开发指导之四——RocketMQ常见问题
  11. 游戏动词和宾语设计案例精选
  12. Linux chapter 8
  13. Sturts2【四】 StrutsPrepareAndExecuteFilter源码分析二
  14. 灵格斯怎么屏幕取词_灵格斯屏幕取词翻译插件
  15. stm32F4系列3:学习资料和教程推荐,流程推荐。
  16. 一个启动U盘装多系统引导,无需反复格式化,ISO/WIM等文件拷贝到U盘即可启动
  17. 在云端管理您的所有身份(AAD)-第二部分
  18. Unity将世界坐标转为UI坐标
  19. Ffmpeg报Error initializing filter ‘gltransition‘这个有问题解决方法
  20. 服务器常见状态码以及对应关系

热门文章

  1. 中国4G网速对比美国:差距看呆
  2. ubuntu22.04安装wechat微信
  3. Android 获取照片时间
  4. 最小二乘法(LSM)入门详解(原理及公式推导),MATLAB实现及应用
  5. linux下一款不错的背单词软件(reciteword)
  6. 网络入侵的几种常用方法
  7. PHP笔记(一):开发环境配置
  8. Bootstarp中toastr.js的使用
  9. insmod mknod
  10. 数字IC前端设计入门----之环境搭建