查找用户是否正在通话?

时间:2015-04-28 09:38:43

标签: ios swift phone-call

我想查看用户是否正在使用该应用程序并查看他们是否正在通话。我正在关注此链接,以查看用户是否正在接听电话:iOS How to check if currently on phone call。但是,这看起来像是Objective-C。我想知道是否有Swift相当于此。这是我的尝试:

    var currCall = CTCallCenter()
    var call = CTCall()

    for call in currCall.currentCalls{
        if call.callState == CTCallStateConnected{
            println("In call.")
        }
    }

然而,看起来好像呼叫具有属性.callState,就像它在前面的例子中一样。任何帮助,将不胜感激!谢谢!

3 个答案:

答案 0 :(得分:9)

iOS 10,Swift 3

@Select(getAll)
@ResultType("java.lang.String")
List<String> getAll();

答案 1 :(得分:5)

Swift 2.2的更新:您只需要安全地解开array_keys_exists(array $requiredKeys, array $array)

currCall.currentCalls

上一个答案:您需要安全地展开以告诉它是什么类型,编译器不知道。

import CoreTelephony
let currCall = CTCallCenter()

if let calls = currCall.currentCalls {
    for call in calls {
        if call.callState == CTCallStateConnected {
            print("In call.")
        }
    }
}

答案 2 :(得分:3)

或者更短(Swift 5.1):

{{1}}