2010-04-12 42 views
3

問候大家。要求CoreTelephony框架示例

任何人都可以有一個CoreTelephony框架的工作示例?我使用類轉儲將所有CoreTelephony頭文件轉儲並添加到「/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.1.3.sdk/System/Library/PrivateFrameworks/CoreTelephony.framework」。現在我遵循Erica的教程(http://blogs.oreilly.com/iphone/2008/08/iphone-notifications.html)。

我添加這些代碼下面幾行,我的main.m,

id ct = CTTelephonyCenterGetDefault(); 
    CTTelephonyCenterAddObserver(
     ct, 
     NULL, 
     callback, 
     NULL, 
     NULL, 
     CFNotificationSuspensionBehaviorHold); 

,但我得到的警告一樣,

的功能隱聲明 「CTTelephonyCenterGetDefault()」 和「CTTelephonyCenterAddObserver (......)」。

任何人都可以有完整的工作示例,它將解釋如何獲取CoreTelepony通知?

+0

僅供參考......''CoreTelephony'是一個私人框架,所以如果您嘗試直接使用它,則永遠不會在商店中獲得應用程序。 – 2010-04-12 15:55:26

+0

@Dave:...除非你使用4.0(儘管4.0 SDK沒有CTTelephonyCenter,它仍然是一個私有API。) – kennytm 2010-04-12 17:33:14

+0

@Dave,我正在爲我的Jail-Break手機開發一個應用程序。 – prathumca 2010-04-13 10:38:38

回答

3

我一直成功地使用這個私人框架。該警告將防止您的代碼運行,但你可以把下面的聲明在你的代碼來獲得對CTTelephoneCenterGetDefault()擺脫了警告:

id CTTelephonyCenterGetDefault(); 

(你可以做的CTTelephonyCenterAddObserver()警告類似的東西,如果你喜歡)

+0

我前一陣子成功了。是的你是對的,我們需要把「extern id CTTelephonyCenterGetDefault();」在你的.mm文件的後面。 – prathumca 2010-09-29 07:21:55

0

警告「函數的隱式聲明」表示編譯器無法在頭中找到函數的定義。

如果函數是在頭文件中定義的,那麼你很可能沒有正確導入它們。

我還會注意到你不應該在iPhone應用程序的main.m中放置任何代碼。在啓動UIApplication之前,大部分重要代碼都不會加載。改爲將代碼放入應用程序代理的applicationDidFinishLaunching:中。

+0

我知道爲什麼我會收到警告。但問題是我在哪裏可以找到'CTTelephonyCenterGetDefault()'的定義? 我使用了import語句#import 和其他必需的導入語句。但無法進一步進行。 你有任何想法或任何工作代碼?如果你有可以請與我分享? 我會嘗試將我的代碼移動到「applicationDidFinishLaunching」。 – prathumca 2010-04-13 10:35:19

+0

對Erica Sadun博客帖子的評論說,你不能在Xcode中這樣做,但必須使用稱爲「Open SDK」的東西(http://blogs.oreilly.com/digitalmedia/2008/03/iphone-open-sdk- vs-closed-sdk.html)其中一位評論者報告了您正在收到的相同錯誤。這篇博文也是兩歲,所以我不知道它今天有多相關。你正在研究非常非常不規範的事情。它可能不會有簡單的答案,或者可能不再是可能的。 – TechZen 2010-04-13 13:19:14

1

我設法讓這個框架部分工作 - 我仍然有一些函數,我不知道他們的確切的API - 有沒有在這個框架中的所有功能的完整描述?

0

你可以找到coretelephonyframework example here

+0

有人可以指導我如何使用這個例子。因爲當我保持這個應用程序活躍,並有來電,該應用程序崩潰。任何想法? – coder1010 2013-01-28 08:48:35