Это обоснованное оправдание для выхода из приложения iPhone программно?

Я знаю, что этот вопрос задавался много раз, и мы получили эту ссылку в ответ от Apple: http://developer.apple.com/library/ios/

Однако недавно я познакомился с этим делом ниже. Я не вижу никаких других вариантов, кроме как использовать 'exit(0)' напрямую.

У меня есть приложение, которое может собирать цифровые данные с камеры или микрофона моего iPhone. Затем я разработал кнопку с надписью "Сохранить и выйти", потому что это очень распространенный сценарий моего приложения.

Без возможности программно выйти из приложения у меня может быть только глупая кнопка "Сохранить". Затем мои пользователи должны щелкнуть дважды ( 1. кнопку "Сохранить", а затем 2. кнопку "Домой"), чтобы получить одинаковый результат - эти два действия последовательно объединены.

Тогда я понял, может быть, это недостаток моего дизайна. Поэтому я изменил это так.

Я удалил кнопку "Сохранить выход" и вместо этого добавил внизу заметку "Использовать кнопку HOME для сохранения и выхода". Я попытался поймать сигнал отказа от действий пользователей, а затем выполнить СОХРАНЕНИЕ до этого.

Делая это, пользователь может просто использовать встроенную кнопку HOME, чтобы сделать "Сохранить и выйти".

Однако это решение не идеально.

Если моему приложению требуется слишком много времени для сохранения данных, у iOS все еще есть шанс убить мое приложение после того, как пользователь нажмет кнопку "HOME". Тогда пользователь может потерять свои данные без предварительного уведомления!!!

Если я могу выйти программно, я могу сначала попытаться "СОХРАНИТЬ". Если "СОХРАНИТЬ" не удается, у меня достаточно времени, чтобы проинформировать моего пользователя или выполнить все необходимые работы по исправлению.

Считаете ли вы, что это правильное обоснование для использования "выхода (0)" в моем приложении, не будучи отклоненным?

2 ответа

Решение

Нет, я очень сомневаюсь, что Apple даст вам кнопку "сохранить и выйти". Это полностью противоречит соглашениям платформы и прямо противоречит HIG от Apple.

Как вы думаете, при каких обстоятельствах у вас будут данные, которые не могут быть сохранены в течение времени, которое iOS предоставляет приложению для очистки? Вы действительно измерили это и обнаружили, что это проблема?

Почему бы вам не попробовать просто сохранять все время автоматически? Вы можете сохранить во временную директорию, а затем при выходе выполнить операцию перемещения файла. Это, вероятно, будет намного быстрее, чем ваша текущая операция сохранения, которая иногда не удается.

Другие вопросы по тегам