应用程序不以后台模式运行ios

时间:2013-07-29 08:18:36

标签: iphone 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

因为我上次打开应用程序时没有连接,所以白页显示,所以当我再次打开应用程序(现在我有互联网)时,应用程序的主页面必须启动,但因为它保存最后打开的视图,所以再次显示白页,如果我双击iphone的主按钮并关闭应用程序,再次运行它可以正常工作, 希望你现在有我。 是真的如果我把(应用程序不在后台运行)转到YES吗?或者你建议另一个解决方案,如果是,请告诉我这个选项(应用程序不在后台运行)做什么?如果有不便之处,使用它是否安全? 谢谢

1 个答案:

答案 0 :(得分:0)

无论何时再来,都要在课堂上试试。

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

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

NSNotification 告诉应用程序它是否会从后台进入前台。
然后再次调用“互联网连接”检查方法。

希望这对你有帮助。

感谢。