CTCallCenter currentCalls不更新 - 每次安装只能运行一次

时间:2012-02-16 01:01:42

标签: iphone objective-c ios

我正在尝试在调用applicationDidBecomeActive时检测用户是否已在通话中。

使用CTCallCenter的callEventHandler对此不起作用(虽然我已经让它运行得很好),所以我使用了CTCallCenter中定义的currentCalls属性。我有以下功能:

- (Boolean) currentlyInCall {
    CTCallCenter *callCenter = [[CTCallCenter alloc]init];
    if([callCenter currentCalls] == nil) {
        return false;
    }
    else {
        return true;
    }
}

如果用户已经在通话中或者他们不是......但是只有在干净安装后第一次运行应用程序时,才会返回正确的值。之后,此方法将始终返回false - 意味着currentCalls始终返回nil - 即使用户实际处于呼叫中。 强制退出应用程序没有帮助,也没有重启设备。只能重新安装。

有什么想法吗?这会发生在其他人的设备上吗?

如果重要的话,我正在使用XCode 4在OSX Lion上进行自动引用计数并在3GS iPhone上进行测试。

1 个答案:

答案 0 :(得分:2)

结果是currentCalls恢复得很好。我的程序中的其他地方有一个问题,看起来它不是。糟糕。