Search in sources :

Example 16 with CookieManager

use of android.webkit.CookieManager in project box-android-sdk by box.

the class OAuthActivity method clearCachedAuthenticationData.

private void clearCachedAuthenticationData() {
    if (oauthView != null) {
        oauthView.clearCache(true);
        oauthView.clearFormData();
        oauthView.clearHistory();
    }
    // wipe out cookies.
    CookieSyncManager.createInstance(this);
    CookieManager cookieManager = CookieManager.getInstance();
    cookieManager.removeAllCookie();
    deleteDatabase("webview.db");
    deleteDatabase("webviewCache.db");
    File cacheDirectory = getCacheDir();
    SdkUtils.deleteFolderRecursive(cacheDirectory);
    cacheDirectory.mkdir();
}
Also used : File(java.io.File) CookieManager(android.webkit.CookieManager)

Example 17 with CookieManager

use of android.webkit.CookieManager in project facebook-android-sdk by facebook.

the class Utility method clearCookiesForDomain.

private static void clearCookiesForDomain(Context context, String domain) {
    // This is to work around a bug where CookieManager may fail to instantiate if
    // CookieSyncManager has never been created.
    CookieSyncManager syncManager = CookieSyncManager.createInstance(context);
    syncManager.sync();
    CookieManager cookieManager = CookieManager.getInstance();
    String cookies = cookieManager.getCookie(domain);
    if (cookies == null) {
        return;
    }
    String[] splitCookies = cookies.split(";");
    for (String cookie : splitCookies) {
        String[] cookieParts = cookie.split("=");
        if (cookieParts.length > 0) {
            String newCookie = cookieParts[0].trim() + "=;expires=Sat, 1 Jan 2000 00:00:01 UTC;";
            cookieManager.setCookie(domain, newCookie);
        }
    }
    cookieManager.removeExpiredCookie();
}
Also used : CookieSyncManager(android.webkit.CookieSyncManager) CookieManager(android.webkit.CookieManager)

Example 18 with CookieManager

use of android.webkit.CookieManager in project Klyph by jonathangerbaud.

the class Utility method clearCookiesForDomain.

private static void clearCookiesForDomain(Context context, String domain) {
    // This is to work around a bug where CookieManager may fail to instantiate if CookieSyncManager
    // has never been created.
    CookieSyncManager syncManager = CookieSyncManager.createInstance(context);
    syncManager.sync();
    CookieManager cookieManager = CookieManager.getInstance();
    String cookies = cookieManager.getCookie(domain);
    if (cookies == null) {
        return;
    }
    String[] splitCookies = cookies.split(";");
    for (String cookie : splitCookies) {
        String[] cookieParts = cookie.split("=");
        if (cookieParts.length > 0) {
            String newCookie = cookieParts[0].trim() + "=;expires=Sat, 1 Jan 2000 00:00:01 UTC;";
            cookieManager.setCookie(domain, newCookie);
        }
    }
    cookieManager.removeExpiredCookie();
}
Also used : CookieSyncManager(android.webkit.CookieSyncManager) CookieManager(android.webkit.CookieManager)

Example 19 with CookieManager

use of android.webkit.CookieManager in project Talon-for-Twitter by klinker24.

the class LoginActivity method onCreate.

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    sharedPrefs = getSharedPreferences("com.klinker.android.twitter_world_preferences", 0);
    context = this;
    settings = AppSettings.getInstance(context);
    //context.sendBroadcast(new Intent("com.klinker.android.twitter.STOP_PUSH"));
    Utils.setUpTheme(context, settings);
    setContentView(R.layout.login_activity);
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
    ConfigurationBuilder builder = new ConfigurationBuilder();
    builder.setOAuthConsumerKey(settings.TWITTER_CONSUMER_KEY);
    builder.setOAuthConsumerSecret(settings.TWITTER_CONSUMER_SECRET);
    Configuration configuration = builder.build();
    TwitterFactory factory = new TwitterFactory(configuration);
    twitter = factory.getInstance();
    btnLoginTwitter = (Button) findViewById(R.id.btnLoginTwitter);
    noThanks = (Button) findViewById(R.id.dont_follow);
    title = (TextSwitcher) findViewById(R.id.welcome);
    summary = (TextSwitcher) findViewById(R.id.info);
    progDescription = (TextSwitcher) findViewById(R.id.progress_desc);
    progressBar = (ProgressBar) findViewById(R.id.progress_bar);
    main = (LinearLayout) findViewById(R.id.mainLayout);
    Animation in = AnimationUtils.loadAnimation(this, android.R.anim.slide_in_left);
    Animation out = AnimationUtils.loadAnimation(this, android.R.anim.slide_out_right);
    title.setFactory(new ViewSwitcher.ViewFactory() {

        public View makeView() {
            TextView myText = new TextView(LoginActivity.this);
            myText.setTextSize(30);
            return myText;
        }
    });
    // set the animation type of textSwitcher
    title.setInAnimation(in);
    title.setOutAnimation(out);
    summary.setFactory(new ViewSwitcher.ViewFactory() {

        public View makeView() {
            TextView myText = new TextView(LoginActivity.this);
            myText.setTextSize(17);
            return myText;
        }
    });
    // set the animation type of textSwitcher
    summary.setInAnimation(in);
    summary.setOutAnimation(out);
    progDescription.setFactory(new ViewSwitcher.ViewFactory() {

        public View makeView() {
            TextView myText = new TextView(LoginActivity.this);
            myText.setTextSize(17);
            return myText;
        }
    });
    // set the animation type of textSwitcher
    progDescription.setInAnimation(in);
    progDescription.setOutAnimation(out);
    title.setText(getResources().getString(R.string.first_welcome));
    summary.setText(getResources().getString(R.string.first_info));
    progressBar.setProgress(100);
    CookieSyncManager.createInstance(this);
    CookieManager cookieManager = CookieManager.getInstance();
    cookieManager.removeAllCookie();
    mWebView = (WebView) findViewById(R.id.loginWebView);
    try {
        mWebView.getSettings().setJavaScriptEnabled(true);
    } catch (Exception e) {
    }
    mWebView.getSettings().setAppCacheEnabled(false);
    mWebView.getSettings().setSavePassword(false);
    mWebView.getSettings().setSaveFormData(false);
    mWebView.setWebViewClient(new WebViewClient() {

        @Override
        public boolean shouldOverrideUrlLoading(WebView webView, String url) {
            Log.v("talon_login", "url: " + url);
            if (url != null && url.startsWith("oauth:///talonforandroid")) {
                handleTwitterCallback(url);
            } else if (url.equals("https://twitter.com/")) {
                webView.loadUrl(requestUrl);
            } else {
                webView.loadUrl(url);
            }
            return true;
        }
    });
    noThanks.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            new FollowMe().execute();
            btnLoginTwitter.setText(getResources().getString(R.string.back_to_timeline));
            noThanks.setVisibility(View.GONE);
            summary.setText(getResources().getString(R.string.third_info));
        }
    });
    btnLoginTwitter.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // Call login_activity twitter function
            if (btnLoginTwitter.getText().toString().contains(getResources().getString(R.string.login_to_twitter))) {
                if (Utils.hasInternetConnection(context)) {
                    btnLoginTwitter.setEnabled(false);
                    new AlertDialog.Builder(context).setMessage("Twitter may display that Talon cannot authenticate any more users. " + "\n\n" + "If so, and you have logged into Talon in the past, simply hit the 'Sign In' button in the top right and it will allow you to log in as normal. " + "\n\n" + "If you have never logged into Talon, then you will have to wait to login. Twitter seems to allow more users access every few hours.").setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {

                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            dialog.dismiss();
                        }
                    }).setNegativeButton("More Info", new DialogInterface.OnClickListener() {

                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("https://plus.google.com/117432358268488452276/posts/KG4AcH3YA2U")));
                        }
                    }).show();
                    new RetreiveFeedTask().execute();
                } else {
                    Toast.makeText(context, getResources().getString(R.string.no_network) + "!", Toast.LENGTH_SHORT).show();
                }
            } else if (btnLoginTwitter.getText().toString().contains(getResources().getString(R.string.initial_sync))) {
                new getTimeLine().execute();
            } else if (btnLoginTwitter.getText().toString().contains(getResources().getString(R.string.no_thanks))) {
                btnLoginTwitter.setText(getResources().getString(R.string.back_to_timeline));
                noThanks.setVisibility(View.GONE);
                summary.setText(getResources().getString(R.string.third_info));
            } else {
                if (settings.timelineRefresh != 0) {
                    // user only wants manual
                    AlarmManager am = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
                    long now = new Date().getTime();
                    long alarm = now + settings.timelineRefresh;
                    PendingIntent pendingIntent = PendingIntent.getService(context, HomeFragment.HOME_REFRESH_ID, new Intent(context, TimelineRefreshService.class), 0);
                    am.setRepeating(AlarmManager.RTC_WAKEUP, alarm, settings.timelineRefresh, pendingIntent);
                    now = new Date().getTime();
                    alarm = now + settings.mentionsRefresh;
                    PendingIntent pendingIntent2 = PendingIntent.getService(context, MentionsFragment.MENTIONS_REFRESH_ID, new Intent(context, MentionsRefreshService.class), 0);
                    am.setRepeating(AlarmManager.RTC_WAKEUP, alarm, settings.mentionsRefresh, pendingIntent2);
                    alarm = now + settings.dmRefresh;
                    PendingIntent pendingIntent3 = PendingIntent.getService(context, DMFragment.DM_REFRESH_ID, new Intent(context, DirectMessageRefreshService.class), 0);
                    am.setRepeating(AlarmManager.RTC_WAKEUP, alarm, settings.dmRefresh, pendingIntent3);
                }
                // set up the autotrim
                AlarmManager am = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
                long now = new Date().getTime();
                long alarm = now + AlarmManager.INTERVAL_DAY;
                Log.v("alarm_date", "auto trim " + new Date(alarm).toString());
                PendingIntent pendingIntent = PendingIntent.getService(context, 161, new Intent(context, TrimDataService.class), 0);
                am.set(AlarmManager.RTC_WAKEUP, alarm, pendingIntent);
                finish();
                Intent timeline = new Intent(context, MainActivity.class);
                timeline.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP);
                timeline.putExtra("tutorial", true);
                sharedPrefs.edit().putBoolean("should_refresh", false).commit();
                sharedPrefs.edit().putBoolean("refresh_me", true).commit();
                sharedPrefs.edit().putBoolean("refresh_me_mentions", true).commit();
                sharedPrefs.edit().putBoolean("refresh_me_dm", true).commit();
                sharedPrefs.edit().putBoolean("need_new_dm", false).commit();
                sharedPrefs.edit().putBoolean("need_clean_databases_version_1_3_0", false).commit();
                sharedPrefs.edit().putBoolean("setup_v_two", true).commit();
                sharedPrefs.edit().putBoolean("version_2_2_7_1", false).commit();
                AppSettings.invalidate();
                startActivity(timeline);
            }
        }
    });
}
Also used : AlertDialog(android.app.AlertDialog) ConfigurationBuilder(twitter4j.conf.ConfigurationBuilder) Configuration(twitter4j.conf.Configuration) DialogInterface(android.content.DialogInterface) MainActivity(com.klinker.android.twitter.activities.MainActivity) ViewSwitcher(android.widget.ViewSwitcher) TextView(android.widget.TextView) WebView(android.webkit.WebView) CookieManager(android.webkit.CookieManager) WebViewClient(android.webkit.WebViewClient) PendingIntent(android.app.PendingIntent) Intent(android.content.Intent) TwitterFactory(twitter4j.TwitterFactory) View(android.view.View) WebView(android.webkit.WebView) TextView(android.widget.TextView) TwitterException(twitter4j.TwitterException) Date(java.util.Date) Animation(android.view.animation.Animation) AlarmManager(android.app.AlarmManager) PendingIntent(android.app.PendingIntent)

Example 20 with CookieManager

use of android.webkit.CookieManager in project Notes by lguipeng.

the class EvernoteUtil method removeAllCookiesV14.

@SuppressWarnings("deprecation")
private static void removeAllCookiesV14(Context context) {
    CookieSyncManager.createInstance(context);
    CookieManager cookieManager = CookieManager.getInstance();
    cookieManager.removeAllCookie();
}
Also used : CookieManager(android.webkit.CookieManager)

Aggregations

CookieManager (android.webkit.CookieManager)36 CookieSyncManager (android.webkit.CookieSyncManager)9 Test (org.junit.Test)7 WebView (android.webkit.WebView)4 SuppressLint (android.annotation.SuppressLint)3 WebSettings (android.webkit.WebSettings)3 Context (android.content.Context)2 Intent (android.content.Intent)2 Editor (android.content.SharedPreferences.Editor)2 Uri (android.net.Uri)2 View (android.view.View)2 WebViewClient (android.webkit.WebViewClient)2 TextView (android.widget.TextView)2 TargetApi (android.annotation.TargetApi)1 ActionBar (android.app.ActionBar)1 AlarmManager (android.app.AlarmManager)1 AlertDialog (android.app.AlertDialog)1 PendingIntent (android.app.PendingIntent)1 DialogInterface (android.content.DialogInterface)1 SharedPreferences (android.content.SharedPreferences)1