在我的应用程序中,我遇到需要强制关闭应用程序的情况。在某种警报窗口之后退出应用程序的最佳方式是什么?
小例子:
If user enters password 3 times wrong, i want to close app
升级版:
exit(0);
不是一种选择。这将关闭没有动画和任何其他相关内容的应用程序
在我的应用程序中,我遇到需要强制关闭应用程序的情况。在某种警报窗口之后退出应用程序的最佳方式是什么?
小例子:
If user enters password 3 times wrong, i want to close app
升级版:
exit(0);
不是一种选择。这将关闭没有动画和任何其他相关内容的应用程序
在SO这个问题之前被问了很多次,你一定知道,
在 iPhone 上,没有任何退出应用程序的概念。应该导致应用程序退出的唯一操作是触摸主页按钮。不幸的是,开发人员无权访问它
根据 Apple 的说法,您的应用程序不得自行终止。由于用户没有点击 Home 按钮,因此任何返回到 Home 屏幕的操作都会给用户留下您的应用程序崩溃的印象。
下面给出的答案是完全错误的,在任何情况下都不能使用退出功能,即使苹果会拒绝这种应用程序。
您可以查看苹果的QA 报告以供参考。
苹果审查指南:
10.1:应用程序必须遵守 Apple iPhone 人机界面指南和 Apple iPad 人机界面指南中解释的所有条款和条件
我们发现您的应用包含一个用于退出应用的 UI 控件。这不符合 App Store 审查指南所要求的 iOS 人机界面指南。
随时准备停止
当人们按下 Home 按钮打开不同的应用程序或使用设备功能(例如电话)时,iOS 应用程序会停止。特别是,人们不会点击应用程序关闭按钮或从菜单中选择退出。为了提供良好的停止体验,iOS 应用程序应该:
尽快并尽可能多地保存用户数据,因为退出或终止通知可能随时到达。
停止时保存当前状态,尽可能详细地保存,以便人们在再次启动应用程序时不会丢失上下文。例如,如果您的应用显示滚动数据,请保存当前滚动位置。”
删除任何退出应用程序的机制是合适的。
你不应该使用 exit(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.