应用程序在后台显示计数器

时间:2012-08-05 08:37:10

标签: iphone ios ios5

我正在创建一个始终在UDP套接字上侦听的应用程序,即使应用程序在后台也是如此。当某个数据到达时抛出套接字,我想显示用户计时器从10到0计算10秒。

是否可以在应用程序处于后台时显示此计数器?

我可以向用户显示背景中的任何消息([[UIApplication sharedApplication] presentLocalNotificationNow:...]除外对我不利),例如苹果闹钟吗?

注意

  • 我不需要申请批准应用商店。我只需要它在家工作。
  • 我已经成功地在后台保持通信,并且我知道正在运行的应用程序

感谢名单

1 个答案:

答案 0 :(得分:0)

您可以尝试使用徽章图标,并每秒将数字从10更新为0。我假设你把这些方法放在AppDelegate中,但它们可以去任何地方。尝试:

<强>·H

@interface AppDelegate : NSObject <UIApplicationDelegate> {
  int       _countDownNumber;
  NSTimer * _countDownTimer;
}

<强>的.m

- (void)updateTimer; {
  [[UIApplication sharedApplication] setApplicationIconBadgeNumber:_countDownNumber];
  _countDownNumber--;

  if(_countDownNumber < 0){
    [_countDownTimer invalidate];
  }
}

- (void)methodThatStartsTheCountDown; {
  _countDownNumber = 10;
  _countDownTimer = [NSTimer scheduledTimerWithTimeInterval:1.0f target:self selector:@selector(updateTimer) userInfo:nil repeats:YES];
}

希望有帮助!