1

私のアプリケーションは GPS をサポートしており、フォアグラウンドとバックグラウンドの両方で実行されます。デバイスがロックされていない限り、完全に機能しているタイマーを開始しました。デバイスがロックされていてもタイマーを実行し続けたい。

これを行う方法を教えてもらえますか?

4

1 に答える 1

3

どちらの方法でタイマーを開始しても、デフォルトの実行モードは次のようになります。

     Timer *timer = [NSTimer scheduledTimerWithTimeInterval:5 target:self selector:@selector(run) userInfo:nil repeats:YES];

     [[ NSRunLoop currentRunLoop ] addTimer:timer forMode:NSDefaultRunLoopMode ];

を使用してNSDefaultRunLoopMode。もっと柔軟性が欲しいので、NSRunLoopCommonModes代わりに forMode を take に変更すれば問題ありません。

于 2012-04-24T05:36:05.620 に答える