重新启动iphone应用程序从最开始



当我关闭应用程序(通过HOME按钮)并再次打开它时,我如何强制应用程序从最开始的视图重新启动,而不是从显示的最后位置重新启动(在它关闭之前)?它是项目中的一个背景吗?

设置应用的信息。plist key: UIApplicationExitsOnSuspend为True

寻找来自手机的通知,让你知道手机"变得活跃",这只会发生在应用程序运行时,然后发送到后台,然后再次拉起。一旦你知道它已经再次激活,你可以推你的主页视图。

- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification {
    if (application.applicationState == UIApplicationStateInactive ) {
         //application has been sent to the background
    }
    if(application.applicationState == UIApplicationStateActive ) { 
        //The application has become active an alert view or do something appropriate.
        //push home view here.
    }
}

这是由多任务处理引起的,即应用程序没有正确退出。

要确保它弹出,在applicationWillEnterForeground中尝试这样做,如下所示:

- (void)applicationWillEnterForeground:(UIApplication *)application
{
    [self.navigationController popToRootViewControllerAnimated:NO];
}

或者一种非常快速和肮脏的方法,就是在应用程序进入后台时退出应用程序(注意这可能不是最好的方法)。

- (void)applicationDidEnterBackground:(UIApplication *)application
{
    [[NSThread mainThread] exit];
    // OR
    exit(0);
}

最新更新