0

アプリがバックグラウンドにあった時間を調べようとしています。すべてが正常にコンパイルされますが、アプリがバックグラウンドにあった時間に応じてカウンターが増加しません。

  -(void)applicationWillResignActive:(UIApplication *)application {

    closeTime = [NSDate date];

    NSUserDefaults *defaultsCloseTime;
    [defaultsCloseTime setInteger:closeTime forKey:@"closeTimeKey"];
    [defaultsCloseTime synchronize];

}

-(void)applicationWillEnterForeground:(UIApplication *)application {

    closeTime = [[NSUserDefaults standardUserDefaults] integerForKey:@"closeTimeKey"];

    timeInterval = [closeTime timeIntervalSinceNow] * -100;

}


Counter

私のビューコントローラで:

counterInt = time + counterInt;
4

1 に答える 1

0

synchronize終了時刻をユーザーのデフォルトに書き込んだ後に行う必要があります。また、あなたの質問では、どこで読んcounterIntでいて、ユーザーのデフォルトにも保存していますか?

もう一つ:

NSInterger time = round(timeInterval);
于 2013-03-23T22:30:17.283 に答える