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]; 

우리는 기업의 목적을 위해 응용 프로그램을 사용하고 있습니다, 그래서 우리는 개인 프레임 워크를 사용하는 애플의 거부에 대해 걱정할 필요가 없습니다 :

우리가 사용하고있는 코드입니다.

도움이 될 것입니다.

답변

0

[app valueForKey:@"statusBar"]은 백그라운드 상태에서 nil과 같습니다. statusbar는 bg에서 앱에 액세스 할 수 없기 때문입니다.