【问题标题】:How Keep website session in android webview如何在android webview中保持网站会话
【发布时间】:2017-10-10 00:47:22
【问题描述】:

我是 android 开发的新手。我只是使用 android webview 为我的网站创建了一个 android 应用程序。当我第一次从移动浏览器打开我的网站时,它会询问登录详细信息,一旦我登录并关闭浏览器而不删除 cookie,然后我再次打开浏览器并访问我的网站,它不会再次询问登录。

但是当我第一次从我的 webview 应用程序打开我的网站时,它要求登录,当我登录并关闭 webview 应用程序时,我再次打开应用程序时它要求我再次登录。每当我打开这个 webview 应用程序时,它都会要求我登录。我想像网络浏览器一样维护我的网站会话,如何在 android webview 中实现这一点?

我的网站有php、mysql登录系统。

我只是想创建一个类似移动浏览器的应用

我的安卓代码是

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_main);

    WebView mywebview = (WebView) findViewById(R.id.webView1);

    mywebview.setWebViewClient(new WebViewClient());

    mywebview.loadUrl("http://mywebsite.com/");


          }
}

【问题讨论】:

  • 可能您需要在 Web 视图的每个新请求中发送凭据
  • 我没有在来自浏览器的每个新请求中发送凭据,但这是有效的
  • 不,两者都不相似@rahul
  • 你做过了吗?我有同样的问题。请分享您的解决方案!谢谢

标签: php android mysql session webview


【解决方案1】:

我遇到了同样的问题,我通过为应用程序启用缓存解决了这个问题。我认为如果您将以下内容添加到您发布的代码中,它可能会解决:

 //enable in-app cache
 mywebview.getSettings().setAppCacheEnabled(true);

希望这对你也有用。

祝你好运!

【讨论】:

  • 我的情况没有任何改变。
【解决方案2】:

您可以使用DOM Storage API,启用API,在加载url之前添加这一行:

mywebview.getSettings().setDomStorageEnabled(true);

【讨论】:

    猜你喜欢
    • 2015-05-26
    • 1970-01-01
    • 1970-01-01
    • 2012-03-26
    • 2011-03-31
    • 2012-07-21
    • 1970-01-01
    • 1970-01-01
    • 2018-05-11
    相关资源
    最近更新 更多