2011-01-26 76 views
2

我正在開發一個適用於facetime的應用程序。不幸的是,現在還沒有Facetime框架或API可用,所以我正在使用我所擁有的。就像你們都必須知道的那樣,當Facetime電話被放置時,本地電話應用會完成這項工作。唯一的問題是,當通話結束時,它會留在那裏。CoreTelephony框架也可用於Facetime嗎?

我想要做的是,一旦通話結束,發送一個本地通知給用戶,詢問他是否想回到我的應用程序,所有這一切都藉助於CoreTelephony框架。我知道這是一個工作進行的框架,它仍然是一個私人的,但是:但是:

我可以在我的應用程序中使用該框架併發布它,而不被Apple拒絕?

該框架是否也適用於Facetime?我無法得到它的工作。 這裏是我做過什麼:

  • 我第一次導入的框架在我的appDelegate頭文件
  • 然後...

- (void)applicationDidEnterBackground:(UIApplication *)application{ 
NSLog(@"applicationDidEnterBackground"); 


CTCallCenter *callCenter = [[CTCallCenter alloc] init]; 
callCenter.callEventHandler=^(CTCall* call){ 

    if (call.callState == CTCallStateDialing){ 
    NSLog(@"Call Dialing"); 
    } 
    if (call.callState == CTCallStateConnected){ 
    NSLog(@"Call Connected"); 
    } 
    if (call.callState == CTCallStateDisconnected){ 
    NSLog(@"Call Disconnected"); 
    } 
}; 
} 

什麼都得不到追蹤。有任何想法嗎?

更新:我只是運行一個小測試,我發現我的代碼完全適用於實際的電話。 CTCallCenter塊必須放置在applicationDidBecomeActive方法中。我也意識到(就像蘋果文檔所說的那樣),框架僅在您的應用程序中分發這些通知。暫停模式不會收到任何類型的通知。

+0

我只是運行一個小測試,我發現我的代碼完全適用於實際的電話。 CTCallCenter塊必須放置在applicationDidBecomeActive方法中。 我也意識到,(如蘋果文檔所述),框架僅在您的應用程序中調度這些通知。暫停模式不會收到任何類型的通知。多麼糟糕...... 有人這樣做了嗎?我有一個有效的方式來回到你的應用程序,在facetime電話後??? thanx!和晚安(哦,我的!已經是凌晨2:30了) – DZenBot 2011-01-30 20:56:57

回答