IOS 系统打电话事件的监听与状态获取
来源:互联网 发布:贵州大数据产业规模 编辑:程序博客网 时间:2024/06/05 09:26
我们可以调用iOS提供的接口拨打电话:
NSString *tel = @"telprompt://"; NSString * number = [tel stringByAppendingString:phoneNubmer]; NSURL * telURL = [NSURL URLWithString: number]; [_callView loadRequest:[NSURLRequest requestWithURL:telURL]]; [self.view addSubview:_callView];
调用之后会弹出iOS的alert,询问是否要拨号,那么我们怎么知道用户是点击了哪个选项呢,可以使用电话事件监听的包和方法:
导入CoreTelephony.framework,
@property (nonatomic, strong) CTCallCenter *center;
这个一定要声明为属性,如果在某个函数中做声明的话,ARC就会自动在函数执行结束的时候将其释放掉。_center = [[CTCallCenter alloc] init]; _center.callEventHandler = ^(CTCall *call) { if ([call.callState isEqualToString:@"CTCallStateDialing"]) { 。。。 } };
call.callState 这个属性记录了电话操作的状态,具体都有哪些值可以通过头文件得知。
#import <CoreTelephony/CTCallCenter.h>#import <CoreTelephony/CTCall.h>
@property (nonatomic, strong) CTCallCenter *callCenter;
CTCallCenter *callCenter = [[CTCallCenter alloc] init]; callCenter.callEventHandler = ^(CTCall* call) { if ([call.callState isEqualToString:CTCallStateDisconnected]) { NSLog(@"挂断了电话咯Call has been disconnected"); } else if ([call.callState isEqualToString:CTCallStateConnected]) { NSLog(@"电话通了Call has just been connected"); } else if([call.callState isEqualToString:CTCallStateIncoming]) { NSLog(@"来电话了Call is incoming"); } else if ([call.callState isEqualToString:CTCallStateDialing]) { NSLog(@"正在播出电话call is dialing"); } else { NSLog(@"嘛都没做Nothing is done"); } };
2 0
- IOS 系统打电话事件的监听与状态获取
- IOS 系统打电话事件的监听与状态获取
- android 监听拔打电话状态
- iOS 调用打电话事件
- iOS文档浏览与文件夹的状态变化的监听
- iOS 调用系统的打电话功能
- ios 调用系统打电话
- Android 系统广播 打电话状态
- iOS监听系统侧滑返回事件
- iOS监听系统侧滑返回事件
- 按钮的监听事件系统
- Android 打电话 RIL 中的事件监听
- iOS 短信与电话事件的获取
- iOS 短信与电话事件的获取
- iOS 短信与电话事件的获取
- iOS 短信与电话事件的获取
- 第三课:获取系统设备的状态,以及系统设备状态改变事件处理
- 注册广播,监听网络状态的改变,时间戳,自动获取系统时间
- MapReduce的map端join
- Qt学习之路(7): 创建一个对话框(上)
- Navicat Premium连接Oracle数据库报错
- Hbase1.1.3的相关使用心得
- Linux/Windows JDK8安装|JDK1.8安装和环境变量配置
- IOS 系统打电话事件的监听与状态获取
- 统计学习方法-感知机
- 【VISIO】visio画图使用技巧
- SpringMVC+hibernate整合JBPM4.4
- 自增长主键
- java提高篇(二三)-----HashMap
- Qt学习之路(8): 创建一个对话框(下)
- 一个不粗的JS插件库网站
- Android 开发最佳实践