15
16

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Android WebViewでCookieを使う方法

Posted at

#Android WebViewでCookieを使う方法
本記事ではAndroid開発におけるWebViewでCookieを使用する方法を掲載します。
##CookieManager取得
CookieManagerを取得します。

CookieManager cookieManager = CookieManager.getInstance();

##CookieManager有効化
CookiManagerを有効化します。

cookieManager.setAcceptCookie(true);

##Cookie設定
CookiManager#setCookieでCookieを設定します。

cookieManager.setCookie(url,cookie);

##Cookieを削除しておく
前のインスタンスでのCookieが残っている可能性があるので、削除しておきます。

cookieManager.removeAllCookie();

##API21以上の場合
API21以上の場合はデフォルトのCookie以外が無効にされますので、これを有効にします。

cookieManager.setAcceptThirdPartyCookies(webview, true);

以上でcookieの設定が完了になります。
全体のコードとしては下記になります。

MyWebView.java

public class MyWebView extends AppCompatActivity {

    private final static String TAG = MyWebView.class.getSimpleName();

    private Resources res;
    private WebView mWebView;
    private String url;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_my_web_view);

        initWebViewSetting();
    }

    private void initWebViewSetting(){
        mWebView = (WebView)findViewById(R.id.webView);
        mWebView.getSettings().setJavaScriptEnabled(true);
        mWebView.getSettings().setLoadWithOverviewMode(true);
        mWebView.getSettings().setUseWideViewPort(true);
        mWebView.setInitialScale(1);
        mWebView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
        mWebView.getSettings().setSaveFormData(false);

        CookieManager cookieManager = CookieManager.getInstance();
        cookieManager.setAcceptCookie(true);
        cookieManager.removeAllCookie();
        cookieManager.setCookie(url,cookie);
        cookieManager.setAcceptThirdPartyCookies(mWebView, true);

        mWebView.loadUrl(url);
    }

}

以上です。

15
16
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
16

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?