如何在 ios phone phonegap 编程中处理呼出和呼入的应用程序?
Posted
技术标签:
【中文标题】如何在 ios phone phonegap 编程中处理呼出和呼入的应用程序?【英文标题】:how to handle the application on outgoing and incoming calls in ios phone phonegap programming? 【发布时间】:2015-06-12 10:19:33 【问题描述】:如果有任何拨出电话和拨入电话,任何人都可以建议我如何处理 ios phonegap 中的应用程序。实际上我是基于电话间隙的应用程序的新手
目前我正在开发一个应用程序来在后台跟踪位置。如果出现任何呼入或呼出,我需要停止我的应用程序后台位置跟踪(呼入/呼出)并在通话结束后启动位置跟踪。
我参考了这个链接: How detect incoming and outgoing call end state? iphone
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(callReceived:) name:CTCallStateIncoming object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(callEnded:) name:CTCallStateDisconnected object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(callConnected:) name:CTCallStateConnected object:nil];
【问题讨论】:
【参考方案1】:添加核心电话框架及其委托方法解决了我的要求。
//Initialize the plugin
- (void)pluginInitialize
self.callCenter = [[CTCallCenter alloc] init];
[self handleCall];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(callReceived:) name:CTCallStateIncoming object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(callEnded:) name:CTCallStateDisconnected object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(callConnected:) name:CTCallStateConnected object:nil];
//handle calls
-(void)handleCall
self.callCenter.callEventHandler = ^(CTCall *call)
if ([call.callState isEqualToString: CTCallStateConnected])
NSLog(@"call CTCallStateConnected");//Background task stopped
else if ([call.callState isEqualToString: CTCallStateDialing])
NSLog(@"call CTCallStateDialing");
else if ([call.callState isEqualToString: CTCallStateDisconnected])
NSLog(@"call CTCallStateDisconnected");//Background task started
else if ([call.callState isEqualToString: CTCallStateIncoming])
NSLog(@"call CTCallStateIncoming");
else
NSLog(@"call NO");
;
【讨论】:
这是一个原生 iOS 解决方案,而不是真正的 PhoneGap 解决方案。 是的,在 phone-gap 中使用本机插件类在我的 phone-gap 应用程序中正常工作 嘿,你创建了一个插件?你能详细说明一下你是如何成功做到这一点的吗?以上是关于如何在 ios phone phonegap 编程中处理呼出和呼入的应用程序?的主要内容,如果未能解决你的问题,请参考以下文章
windows phone 7 - phonegap 停止 jquery.ajax
(ios + phone gap) - 使用仪器配置最终应用程序
有人知道如何在 Phonegap 和 Windows Phone 7 中使用动态磁贴吗? [关闭]
flex mobile 4.5 或 phone gap 中 ios 的音量控制