¿Alguien sabría por qué estoy teniendo un tiempo de actividad extraño con el siguiente método?Tiempo de actividad congelado en iOS/iPhone
NSProcessInfo *processInfo = [NSProcessInfo processInfo];
NSTimeInterval systemUptime = [processInfo systemUptime];
Para primeros minutos, todo parece estar bien, pero cuando vuelva de las horas de aplicaciones o los laters días el tiempo de funcionamiento sigue siendo el mismo: 30min, o 1h34 ... parece congelar en un momento aleatorio. Sobre todo en el iPhone 4 (rara vez en simulador o iPad)
Podría estar relacionado con mi manera de demostrarlo:
+ (NSTimeInterval)uptime:(NSNumber **)days hours:(NSNumber **)hours mins:(NSNumber **)mins
{
NSProcessInfo *processInfo = [NSProcessInfo processInfo];
//START UPTIME///////
NSTimeInterval systemUptime = [processInfo systemUptime];
// Get the system calendar
NSCalendar *sysCalendar = [NSCalendar currentCalendar];
// Create the NSDates
NSDate *date = [[NSDate alloc] initWithTimeIntervalSinceNow:(0-systemUptime)];
unsigned int unitFlags = NSDayCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit;
NSDateComponents *c = [sysCalendar components:unitFlags fromDate:date toDate:[NSDate date] options:0];
//NSString *uptimeString = [NSString stringWithFormat:@"%dd %dh %dmin", [c day],[c hour],[c minute]];
*days = [NSNumber numberWithInt:[c day]];
*hours = [NSNumber numberWithInt:[c hour]];
*mins = [NSNumber numberWithInt:[c minute]];
[date release];
//END UPTIME////////
return systemUptime;
}
Y más adelante en el código:
NSNumber *uptimeDays, *uptimeHours, *uptimeMins;
[CJGDevice uptime:&uptimeDays hours:&uptimeHours mins:&uptimeMins];
NSString *uptimeString = [NSString stringWithFormat:@"%@d %@h %@min",
[uptimeDays stringValue],
[uptimeHours stringValue],
[uptimeMins stringValue]];
EDIT: después de 3 días que grabo los resultados en iPad y iPhone puedo ver que este tiempo de actividad es incorrecto, el tiempo corre demasiado lento, mientras más esperamos, más obvio es que es tarde
** Hace 32 minutos ** mostró ** 2d 12h 21min ** en un iPhone4, ahora muestra ** 2d 12h 35min ** – chriscatfr