我正在编写一个iPhone应用程序,由于某些用户操作,我需要强制它退出。清理应用程序分配的内存后,应该调用什么方法来终止应用程序?
发布于 2008-12-10 05:49:13
你试过exit(0)
吗?
或者,[[NSThread mainThread] exit]
,尽管我没有尝试过,但它似乎是更合适的解决方案。
发布于 2008-12-10 14:54:06
在iPhone上,没有退出应用程序的概念。唯一应该导致应用程序退出的操作是触摸手机上的Home按钮,而这不是开发人员可以访问的。
根据苹果公司的说法,你的应用程序不应该自行终止。由于用户没有点击Home按钮,因此任何返回到Home屏幕的操作都会给用户一种应用程序崩溃的印象。这是令人困惑的、非标准的行为,应该避免。
发布于 2013-07-23 13:54:33
当崩溃时,退出(0)出现在用户面前,因此向用户显示一条确认消息。确认后,暂停(以编程方式按下主页按钮)并等待2秒,同时应用程序将进入后台动画,然后在用户视图后面退出
-(IBAction)doExit
{
//show confirmation message to user
UIAlertView* alert = [[UIAlertView alloc] initWithTitle:@"Confirmation"
message:@"Do you want to exit?"
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"OK", nil];
[alert show];
}
-(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
if (buttonIndex != 0) // 0 == the cancel button
{
//home button press programmatically
UIApplication *app = [UIApplication sharedApplication];
[app performSelector:@selector(suspend)];
//wait 2 seconds while app is going background
[NSThread sleepForTimeInterval:2.0];
//exit app when app is in background
exit(0);
}
}
https://stackoverflow.com/questions/355168
复制相似问题