Как выйти из приложения iPhone с «преднамеренным исключением»? - PullRequest
0 голосов
/ 16 ноября 2011

Я знаю, что Apple закрывает приложение, потому что пользователь может подумать, что оно упало.

Итак, как мне сделать так, чтобы он преднамеренно выходил, за исключением того, что пользователь не возвращается на домашний экран? Кроме того, это будет отклонено App Store?

Ответы [ 4 ]

4 голосов
/ 16 ноября 2011

Я написал этот ответ на другой вопрос.Это выдержка из руководств по интерфейсу Apple Human и должна помочь вам понять, почему вы не должны выходить из программы программно.

Вы не должны принудительно закрывать приложение, поскольку стандартный способ завершить приложение - это нажать кнопку «Домой».(или используйте панель многозадачности)

Не выходите программно


Никогда не выходите из приложения iOS программным путем, потому что люди склонны интерпретировать это как сбой.Однако, если внешние обстоятельства не позволяют вашему приложению функционировать должным образом, вам необходимо рассказать своим пользователям о ситуации и объяснить, что они могут с этим сделать.В зависимости от серьезности неисправности приложения у вас есть два варианта.

Отображение привлекательного экрана, который описывает проблему и предлагает исправление. Экран обеспечивает обратную связь, которая убеждает пользователей, что в этом нет ничего плохогос вашим приложением.Он позволяет пользователям управлять, позволяя им решать, хотят ли они предпринять корректирующие действия, и продолжать использовать ваше приложение или нажать кнопку «Домой» и открыть другое приложение.

Если не работают только некоторые функции вашего приложения., отображать экран или предупреждение, когда люди активируют функцию. Отображать предупреждение только тогда, когда люди пытаются получить доступ к функции, которая не работает.

Источник

2 голосов
/ 16 ноября 2011

Apple, скорее всего, отклонит это как нарушение принципов человеческого интерфейса, поэтому на самом деле не имеет значения, как это сделать.

1 голос
/ 16 ноября 2011

Итак, как мне сделать так, чтобы он преднамеренно выходил, за исключением того, что пользователь не попадает на домашний экран?

Нет. Если ваше приложение «готово», просто вернитесь в исходное состояние.Сбросьте все свои переменные, освободите ваши контроллеры представления, что угодно.Притворись, что приложение действительно закрылось и что пользователь снова запустил его.Вы будете счастливы, ваши пользователи будут счастливы, и Apple будет счастлива.

Альтернативой, если ваше приложение по какой-то причине не может продолжать работу, является отображение сообщения, которое объясняет ситуациюпользователь и говорит им, как решить проблему.Оставьте это сообщение видимым, пока пользователь не покинет приложение, нажав кнопку «Домой».Это может быть единственным разумным способом справиться с ситуациями, когда некоторые ресурсы, такие как доступ к сети, отсутствуют.

Кроме того, будет ли это отклонено App Store?

Никто не может сказать это наверняка, кроме Apple, но я думаю, что вероятность отклонения высока.

0 голосов
/ 16 ноября 2011

Пожалуйста, смотрите ответ на этот вопрос:

Принудительное завершение фонового приложения в симуляторе iOS

Он расскажет вам, как настроить приложение так, чтобы оно завершалось, а не в фоновом режиме, когда пользователь нажимает кнопку «Домой».

Если вы не хотите этого делать, я рекомендую вместо этого высвобождать ресурсы при срабатывании applicationDidEnterBackground вашего делегата. Я думаю, что это ваша самая безопасная ставка. Многие из нас говорят, что то, что вы хотите сделать, не идеально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...