Сохранение учетных данных в мобильном приложении Android / jQuery

Мы обертываем мобильное приложение jQuery с помощью элемента управления Webview в Android. Мобильное приложение jQuery имеет страницу входа. Мы хотим разрешить пользователю сохранять их данные для входа.

Фокус в том, что клиент предпочел бы, чтобы мы не использовали файлы cookie для этого.

Решение / проблема №1:

Мы подумали о возможности создания экрана входа в систему Android, который вызывает службу проверки подлинности и сохраняет токен. Затем токен передается в webview через querystring в свойстве url. Затем мобильное приложение jQuery может захватывать токен из строки запроса и проверять его, позволяя обойти экран входа в мобильное приложение.

Проблема с этим, однако, заключается в следующем: что произойдет, когда пользователь выйдет через мобильное приложение jQuery? Как мобильное приложение может сообщить обозревателю Android удалить токен?

Решение №2, но такая же проблема

Тот же экран входа в систему Android, но вместо передачи его с помощью параметра строки запроса используйте javascript на стороне Android, пройдя через Webview DOM и заполните имя пользователя и пароль на экране входа в мобильный jQuery. Если этот токен существует на стороне Android при запуске приложения, просто обходите экран входа в Android и автоматически заполняйте учетные данные пользователя.

Тем не менее, у этой проблемы есть одна и та же проблема: пользователь вручную выходит из системы.

Разве мы не думаем об этом правильно?

Идеи?

Вы можете использовать свой веб-сайт localstorage. Вы должны включить его в свой веб-просмотр с помощью класса WebViewSettings:

WebSettings settings = webview.getSettings(); settings.setDomStorageEnabled(true); 

Теперь вы должны иметь доступ к localStorage с javascript, как в любом другом браузере, который его поддерживает:

 window.localStorage // Set value window.localStorage.setItem("username", "XXX"); // getting the value var username = window.localStorage.getItem("username"); 

Альтернатива 2: Создайте javascript-интерфейс для своих приложений. Это позволит вам создать и вызвать функцию javascript, которая запускает Java-код в приложении для Android. Этот раздел описан здесь: http://developer.android.com/guide/webapps/webview.html в разделе «Связывание кода JavaScript с кодом Android»