#java #android #progressive-web-apps
#java #Android #progressive-веб-приложения
Вопрос:
У меня проблема: WebView не регистрирует пользователя при закрытии и повторном открытии приложения. Таким образом, пользователю требуется каждый раз входить в систему.
Я искал разные решения, но ни одно из них не сработало. Я знаю, что это должно работать, потому что appsgeyser
и другие веб-сайты предлагают эту функциональность в своем apk для PWA.
Мой mainactivity
, также я использовал диспетчер файлов cookie и многое другое, но не работает.
protected void onCreate(Bundle savedInstanceState) {
//Set your theme before super.onCreate() to replace your previous theme of Manifest
setTheme(R.style.AppTheme);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//TODO: add your MainActivity code here
webView = (WebView)findViewById(R.id.webview);
WebSettings webSettings = webView.getSettings();
webSettings.setJavaScriptEnabled(true);
//webSettings.setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
webSettings.setDomStorageEnabled(true);
webSettings.setDatabaseEnabled(true);
webSettings.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
webSettings.setAppCacheEnabled(true);
webSettings.setAllowFileAccess(true);
webView.setWebChromeClient(new WebChromeClient(){});
webView.setWebViewClient(new WebViewClient(){});
webView.loadUrl("https://www.myapp.app");
}
Комментарии:
1. Я думаю, вам нужно сохранить файл cookie в общих настройках и загружать его при каждом запуске приложения.
2. Привет, Марсело. Если у вас есть возможность выбора, используйте пользовательские вкладки Chrome вместо WebView, поскольку в нем используется общее хранилище файлов cookie (среди разных экземпляров Chrome), чтобы вы могли выполнить единый вход, который вы ищете.