-6

在我的应用程序中,我遇到需要强制关闭应用程序的情况。在某种警报窗口之后退出应用程序的最佳方式是什么?

小例子:

If user enters password 3 times wrong, i want to close app

升级版:

exit(0);

不是一种选择。这将关闭没有动画和任何其他相关内容的应用程序

4

4 回答 4

7

在SO这个问题之前被问了很多次,你一定知道,

在 iPhone 上,没有任何退出应用程序的概念。应该导致应用程序退出的唯一操作是触摸主页按钮。不幸的是,开发人员无权访问它

根据 Apple 的说法,您的应用程序不得自行终止。由于用户没有点击 Home 按钮,因此任何返回到 Home 屏幕的操作都会给用户留下您的应用程序崩溃的印象。

下面给出的答案是完全错误的,在任何情况下都不能使用退出功能,即使苹果会拒绝这种应用程序。

您可以查看苹果的QA 报告以供参考。

于 2013-07-01T13:38:34.480 回答
6

苹果审查指南:

10.1:应用程序必须遵守 Apple iPhone 人机界面指南和 Apple iPad 人机界面指南中解释的所有条款和条件

我们发现您的应用包含一个用于退出应用的 UI 控件。这不符合 App Store 审查指南所要求的 iOS 人机界面指南。

随时准备停止

当人们按下 Home 按钮打开不同的应用程序或使用设备功能(例如电话)时,iOS 应用程序会停止。特别是,人们不会点击应用程序关闭按钮或从菜单中选择退出。为了提供良好的停止体验,iOS 应用程序应该:

尽快并尽可能多地保存用户数据,因为退出或终止通知可能随时到达。

停止时保存当前状态,尽可能详细地保存,以便人们在再次启动应用程序时不会丢失上下文。例如,如果您的应用显示滚动数据,请保存当前滚动位置。”

删除任何退出应用程序的机制是合适的。

于 2013-07-01T13:39:31.217 回答
2

你不应该使用 exit(0); 在您的应用程序中,这意味着您不应该在不按主页按钮的情况下关闭应用程序。如果您手动退出您的应用程序,苹果将拒绝您的应用程序。

于 2013-07-01T13:39:27.253 回答
0

You can use exit(0);

I don't think apple will reject if you have a valid for your app termination. But reason should be highly valid. I have used it in one of my app and it got approved.

于 2013-07-01T14:10:51.757 回答