Как открыть приложение "Настройки" из моего приложения?

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

К сожалению, я не могу предоставить разумные значения по умолчанию для этого приложения, имена хостов сервера, учетные записи пользователей и т. Д. Будут отличаться для каждого пользователя. Я думаю, что лучшее, на что я могу надеяться, - это показать предупреждение, объясняющее, что некоторая конфигурация должна быть введена через настройки, и предоставить кнопку "Возьми меня туда...", которая откроет настройки, а затем откроет раздел настроек для моего приложения., Если это невозможно, открыть настройки лучше, чем ничего.

Я смутно помню, что люди, взломавшие iPhone, нашли способ запуска настроек или других приложений с помощью забавного URL-адреса или номера телефона в адресной книге, но я не нахожу никакой информации об этом в Google.

:(

3 ответа

Решение

Насколько я знаю, нет санкционированного способа открыть настройки из другого приложения.

По моему мнению, вы должны просто запросить значения, если они вам нужны при запуске, сохранить их в своих NSUserDefaults и, возможно, дать указание своим пользователям искать в Settings.app, если им потребуется изменить эти настройки в будущем.

К сожалению, это означает поддержание некоторого минимального пользовательского интерфейса, чтобы ваш пользователь мог заполнить свои настройки во время первого запуска, но для меня это выглядит лучше с точки зрения UX, чем отказывать пользователю в радости немедленного использования приложения.

В своем нынешнем виде Настройки не совсем соответствуют задаче, для которой вы хотите их использовать.

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

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

Apple уже делает это - просто посмотрите на мобильную почту.

Одно из возможных решений, предложенных выше, - написать собственный диалог настроек. Я нашел этот проект http://www.inappsettingskit.com/ который вы можете включить в свое приложение, и он показывает те же настройки, что и iOS. Я еще не тестировал, но собираюсь сделать сейчас.

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