1

Мы используем частные фреймворки (который включает UIStatusBarSignalStrengthItemView.h) для расчета силы сигнала ячейки. Он отлично работает в режиме переднего плана, но как только мое приложение входит в фон, оно перестает обновлять силу сигнала ячейки.UIStatusBarSignalStrengthItemView и signalStrengthRaw для вычисления силы сигнала ячейки, не обновляет значения в фоновом режиме

Код, который мы используем,:

UIApplication *app = [UIApplication sharedApplication]; 
NSArray *subviews = [[[app valueForKey:@"statusBar"] valueForKey:@"foregroundView"] subviews]; 
      NSString *dataNetworkItemView = nil; 
      for (id subview in subviews) { 
       if([subview isKindOfClass:[NSClassFromString(@"UIStatusBarSignalStrengthItemView") class]]) { 
        dataNetworkItemView = subview; 
        break; 
       } 
      } 
int signalStrength = [[dataNetworkItemView valueForKey:@"signalStrengthRaw"] intValue]; 

Пожалуйста, обратите внимание, что мы используем приложение для корпоративных целей, так что нам не нужно беспокоиться об отказе от Apple для использования частных структур.

Любая помощь будет высоко оценена.

ответ

0

[app valueForKey:@"statusBar"] будет равен нулю в фоновом режиме. Это потому, что statusBar недоступен в вашем приложении из bg.