CXCallObserver - 监控背景

时间:2017-03-10 11:51:37

标签: ios callkit

由于某些设备和BLE的限制,我需要在我的应用中监控当用户在手机上时与BLE交互。我已经编写了一个基本的调用观察器来测试 - 但是当应用程序被反向运行时,它没有收到任何更新。我想知道是否有人知道如何在后台获得通话状态通知?

class ViewController: UIViewController{  
  @IBOutlet weak var callStatusLabel: UILabel!  
  var callObs : CXCallObserver!  

  override func viewDidLoad() {  
    super.viewDidLoad()  
    /  
    callObs = CXCallObserver()  
    callObs.setDelegate(self, queue: nil)  
    print("Monitoring Calls")  
    callStatusLabel.text = "Monitoring..."  
    self.view.backgroundColor = UIColor.yellow  
  }  
  override func didReceiveMemoryWarning() {  
    super.didReceiveMemoryWarning()  
    /  
  }  

}  
extension ViewController : CXCallObserverDelegate  
{  
  func callObserver(_: CXCallObserver, callChanged: CXCall)  
  {  
    if(callChanged.hasEnded)  
    {  
      print("Call Ended")  
      callStatusLabel.text = "Call Ended"  
      self.view.backgroundColor = UIColor.green  
    }  
    else if(callChanged.hasConnected)  
    {  
      print("Call Connected")  
      callStatusLabel.text = "Call Connected"  
      self.view.backgroundColor = UIColor.red  
    }  
  }  
}  

我目前启用了以下背景模式: 音频,AirPlay& PIP Loc更新 VOIP 外部配件通讯 使用BLE 后台提取

0 个答案:

没有答案