2013-05-07 49 views
0

有没有办法获得通知被唤起的次数? 通知必须在后台工作,如达尔文通知中心所做的,但不幸的是,此选项忽略最后一项“CFNotificationSuspensionBehaviorHold”。 任何人都可以帮忙吗? 谢谢如何使用通知中心来统计事件的数量

CFNotificationCenterAddObserver(CFNotificationCenterGetDarwinNotifyCenter(), //center 
           NULL, // observer 
           someCallBack, // callback 
           CFSTR("something happens"), // event name 
           NULL, // object 
           CFNotificationSuspensionBehaviorHold); 

编辑:

我不具有enaugh详细解释了我的问题很抱歉,但我意识到这一点时,我得到的第一个回答。 假设使用我的应用程序,然后按下主页按钮。所以它会进入后台。如果在iphone上发生事件“发生了什么”(即使我的应用程序在后台运行),通知也会保存这些信息。但只有一次,无论在我的应用程序中发生的事件在后台运行的频率如何。我想知道在我的应用在后台运行时发生的事件的确切数量。我希望我现在可以说清楚。

回答

0

试试这个:

制作一个int类型的全局实例。在ViewDidLoad中将其定义为0(零),并在调用该方法时将其加1。它可以统计总数量。的调用。

例如,

在.h文件中

int intCount; 

.m文件

 ViewDidLoad method 
      intCount=0; 

在你的方法

intCount++; 

可以打印喜欢

 NSLog(@"totalInvoke=%d",intCount); 
+0

对不起,通过不制定问题良好enaug偷你的时间...我编辑它 – user997653 2013-05-14 11:33:50

0

当使用达尔文通知中心“CFNotificationCenterGetDarwinNotifyCenter()”时,调用CFNotificationCenterAddObserver()时忽略'object'和'suspensionBehavior'参数,因此在您的代码中CFNotificationSuspensionBehaviorHold没有任何作用,并且建议在忽略的参数中传递0或NULL以确保未来兼容性,希望这有助于。

相关问题