2013-07-29 3 views
-1

Моя проблема заключается в том, что я реализую предупреждение, которое позволяет сообщить пользователю, что при открытии приложения нет подключения к Интернету, с предупреждением отображается белый вид. Мой код:приложение не работает в фоновом режиме ios

Reachability * reach = [Reachability reachabilityWithHostname:@"www.google.com"]; 

if([reach isReachable]) 
{ 
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:[NSBundle mainBundle]]; 
MFSideMenuContainerViewController *container = (MFSideMenuContainerViewController *)self.window.rootViewController; 
UINavigationController *navigationController = [storyboard instantiateViewControllerWithIdentifier:@"navigationController"]; 

UIViewController *rightSideMenuViewController = [storyboard instantiateViewControllerWithIdentifier:@"rightSideMenuViewController"]; 

[container setRightMenuViewController:rightSideMenuViewController]; 
[container setCenterViewController:navigationController]; 
} 
else 
{ 
    connection = @"Please connect to Internet"; 
    [self showAlarm:connection]; 
    [reach startNotifier]; 
} 

    - (void)showAlarm:(NSString *)text 
{ 
    UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Connection" 
     message:text delegate:self 
     cancelButtonTitle:@"الغاء" 
     otherButtonTitles:nil]; 
    [alertView show]; 

} 

выше метод, позволяет предупредить пользователя, если нет связи, как на скриншоте ниже: enter image description here

Теперь, если у меня есть подключение к Интернету, и попытайтесь открыть приложение (нажмите на иконку приложения), белые страницы отображаются (еще в фоновом режиме),

enter image description here

Потому что последний раз я открываю приложение, Ther e не является соединением, поэтому отображается белая страница, поэтому, когда я снова открываю приложение (и теперь у меня есть интернет), основная страница приложения должна запускаться, а потому, что он сохраняет последнее открытое представление, так что белая страница отображается снова , если я дважды щелкнул по главной кнопке iphone и закрою приложение, и запустил его снова, он отлично работает, Надеюсь, теперь вы меня достали. Это правда Если я вернусь (приложение не работает в фоновом режиме) к YES? или есть другое решение, которое вы предлагаете, и если да, пожалуйста, скажите мне, что делает этот вариант (приложение не работает в фоновом режиме)? и если у него есть неудобства, безопасно ли его использовать? Спасибо

+0

Просьба поделиться кодом, что вы сделали до сих пор? – Suryakant

+0

Plz уточните свой вопрос ... После прочтения вашего вопроса я не могу понять, что вы хотите точно? Ваш белый фон - проблема или ваша борьба с проверкой подключения к интернету или что? – Ajay

ответ

0

Попробуйте это в своем классе, всякий раз, когда вы приедете снова.

- (void)viewWillAppear:(BOOL)animated 
{ 
    [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(handleEnterForeground:) name: @"UIApplicationDidBecomeActiveNotification" object: nil]; 
} 

- (void) handleEnterForeground: (NSNotification*) sender 
{ 
    [self checkYourConnection_Method]; 
} 

NSNotification говорит заявление, если он придет на передний план от фона.
Затем вызовите метод проверки «Подключение к Интернету» еще раз.

Надеюсь, это поможет вам.

Спасибо.

Смежные вопросы