Skip to content Skip to sidebar Skip to footer

Pass Cookie To Browser Via Intent

I have saved a cookie in android. Now I want to pass it into my browser intent. Look at my current code: Intent browser = new Intent('android.intent.action.VIEW',

Solution 1:

The Browser has no documented Intent extras, let alone one that would allow you to inject a cookie. And, of course, the user might be using a different browser.

You are welcome to use WebView in your application, and you can use the CookieManager to inject your cookie into the WebView's environment.

Solution 2:

Here is the answer that uses android.proveder.Browser:

I have a Map object that I stored the header information I want to pass. Then the following:

Intenti=newIntent(Intent.ACTION_VIEW, Uri.parse(url));
Bundlebundle=newBundle();
if(mExtraHeader!=null){
 for(String key: mExtraHeader.keySet()){
  bundle.putString(key, mExtraHeader.get(key));
 }
}
i.putExtra(Browser.EXTRA_HEADERS, bundle);
startActivity(i);

Like the other guy mentioned, this would only work with the default browser and other browsers wouldn't have Browser.EXTRA_HEADERS I suppose. Resource: http://gitorious.org/rowboat/packages-apps-browser/blobs/a563d09392905140893d7a017dd63721577e1953/src/com/android/browser/BrowserActivity.java

Solution 3:

The above code is working fine to set headers (thanks for it), but I wasn't able to set cookies that way. What I suspect is that if the web browser already has cookies stored for the target URL, it will overwrite cookies created using EXTRA_HEADERS.

Post a Comment for "Pass Cookie To Browser Via Intent"