У меня есть приложение, созданное с использованием мобильных элементов управления XPages. На ipHone приложение ведет себя так, как хотелось бы в стандартном браузере Safari. Когда я беру URL-адрес и добавляю его на домашнюю страницу в качестве значка и использую приложение оттуда каждый раз, когда действие, которое я предпринимаю, вызывает родное приложение (карты, контакты, телефон, средства просмотра вложений и т. д.), когда я переключаюсь обратно в свое приложение Меня сразу же снова спрашивают мой логин и пароль. Есть ли способ контролировать поведение, чтобы не потерять учетные данные для входа так же, как в стандартном приложении Safari.
Сохранение учетных данных для входа в Mobile XPage добавлено на домашнюю страницу
Ответы (3)
Это ограничение iOS. Если вы сохраните его на домашней странице, он будет работать, но НЕ будет многозадачным. Это проблема. Так что он не помнит, где вы были или что-то в этом роде.
Как упоминает Дэвид, все начинается сначала, когда вы переключаетесь обратно... Проблема заключается не только в учетных данных, но и во всей информации, которую вы могли ввести или куда вы перешли в «приложении».
Вот почему я перехожу на другой подход. Я начинаю писать приложения как веб-приложения, которые запускаются локально (т.е. кешируют ресурсы и запускают кешированные версии JS-файлов, CSS и изображений). Затем я реализую локальное хранилище, где вы можете отслеживать, где в приложении вы находитесь, и снова возвращаться в это место. Таким образом, вам не нужна аутентификация для запуска приложения — только для синхронизации информации с сервером. Мой подход заключается в локальном сохранении данных и их синхронизации с сервером (как своего рода репликация). Это, очевидно, дает больше работы, но также дает лучший пользовательский интерфейс, поскольку вы можете запускать «приложение» без подключения.
Я попытался локально управлять кэшированием с помощью файла cache.manifest. Это можно сделать, однако, это боль. Поэтому сейчас я использую Sencha Touch, который действительно делает это хорошо.
/Джон
PS. Я думаю, вы сможете справиться с проблемой входа в систему с помощью пользовательского элемента управления входом в XPage Dojo (http://www.openntf.org/internal/home.nsf/project.xsp?action=openDocument&name=Xpages%20Dojo%20Login%20Custom%20Control) - однако это не решает проблему с перезагрузкой страницы...
Похоже, что секрет успеха здесь НЕ в том, чтобы сказать Safari, что XPage может работать как мобильное веб-приложение. Добавьте следующий код внутри XPage, чтобы убедиться, что это так.
<xp:metaData
name="apple-mobile-web-app-capable"
content="no">
</xp:metaData>
Примечание. Вы по-прежнему можете указать значок для главного экрана, просто этот значок теперь будет больше похож на закладку с элементами управления Safari, и (что более важно) вы можете переключаться между приложениями, и когда вы вернетесь в Safari, он отобразит ваше приложение Xpages. так же, как вы оставили его.