org.chromium.net.GURLUtils Java Examples
The following examples show how to use
org.chromium.net.GURLUtils.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: AwGeolocationPermissions.java From android-chromium with BSD 2-Clause "Simplified" License | 5 votes |
/** * Get the domain of an URL using the GURL library. */ private String getOriginKey(String url) { String origin = GURLUtils.getOrigin(url); if (origin.isEmpty()) { return null; } return PREF_PREFIX + origin; }
Example #2
Source File: AwGeolocationPermissions.java From android-chromium with BSD 2-Clause "Simplified" License | 5 votes |
/** * Get the domain of an URL using the GURL library. */ private String getOriginKey(String url) { String origin = GURLUtils.getOrigin(url); if (origin.isEmpty()) { return null; } return PREF_PREFIX + origin; }
Example #3
Source File: DataReductionPromoInfoBar.java From delion with Apache License 2.0 | 4 votes |
/** * Launch the data reduction infobar promo, if it needs to be displayed. * * @param context An Android context. * @param webContents The WebContents of the tab on which the infobar should show. * @param url The URL of the page on which the infobar should show. * @param isFragmentNavigation Whether the main frame navigation did not cause changes to the * document (for example scrolling to a named anchor PopState). * @param statusCode The HTTP status code of the navigation. * @return boolean Whether the promo was launched. */ public static boolean maybeLaunchPromoInfoBar(Context context, WebContents webContents, String url, boolean isErrorPage, boolean isFragmentNavigation, int statusCode) { ThreadUtils.assertOnUiThread(); if (webContents.isIncognito()) return false; if (isErrorPage) return false; if (isFragmentNavigation) return false; if (statusCode != HttpURLConnection.HTTP_OK) return false; if (!DataReductionPromoUtils.canShowPromos()) return false; // Don't show the infobar promo if neither the first run experience or second run promo has // been shown. if (!DataReductionPromoUtils.getDisplayedFreOrSecondRunPromo()) return false; // Don't show the promo if the user opted out on the first run experience promo. if (DataReductionPromoUtils.getOptedOutOnFrePromo()) return false; // Don't show the promo if the user has seen this infobar promo before. if (DataReductionPromoUtils.getDisplayedInfoBarPromo()) return false; // Only show the promo on HTTP pages. if (!GURLUtils.getScheme(url).concat("://").equals(UrlConstants.HTTP_SCHEME)) return false; int currentMilestone = VersionNumberGetter.getMilestoneFromVersionNumber( PrefServiceBridge.getInstance().getAboutVersionStrings().getApplicationVersion()); String freOrSecondRunVersion = DataReductionPromoUtils.getDisplayedFreOrSecondRunPromoVersion(); Calendar releaseDateOfM48Stable = Calendar.getInstance(TimeZone.getTimeZone("UTC")); releaseDateOfM48Stable.setTime(Date.valueOf(M48_STABLE_RELEASE_DATE)); long packageInstallTime = getPackageInstallTime(context); // The boolean pref that stores whether user opted out on the first run experience was // added in M51. If the last promo was shown before M51, then |freOrSecondRunVersion| will // be empty. If Chrome was installed after the FRE promo was added in M48 and before M51, // assume the user opted out from the FRE and don't show the infobar. if (freOrSecondRunVersion.isEmpty() && packageInstallTime > releaseDateOfM48Stable.getTimeInMillis()) { return false; } // Only show the promo if the current version is at least two milestones after the last // promo was displayed or the command line switch is on. If the last promo was shown before // M51 then |freOrSecondRunVersion| will be empty and it is safe to show the infobar promo. if (!CommandLine.getInstance().hasSwitch(ENABLE_INFOBAR_SWITCH) && !freOrSecondRunVersion.isEmpty() && currentMilestone < VersionNumberGetter .getMilestoneFromVersionNumber(freOrSecondRunVersion) + 2) { return false; } DataReductionPromoInfoBar.launch(webContents, BitmapFactory.decodeResource(context.getResources(), R.mipmap.app_icon), context.getString(R.string.data_reduction_promo_infobar_title), context.getString(R.string.data_reduction_promo_infobar_text), context.getString(R.string.data_reduction_promo_infobar_button), context.getString(R.string.no_thanks)); return true; }
Example #4
Source File: DataReductionPromoInfoBar.java From AndroidChromium with Apache License 2.0 | 4 votes |
/** * Launch the data reduction infobar promo, if it needs to be displayed. * * @param context An Android context. * @param webContents The WebContents of the tab on which the infobar should show. * @param url The URL of the page on which the infobar should show. * @param isFragmentNavigation Whether the main frame navigation did not cause changes to the * document (for example scrolling to a named anchor PopState). * @param statusCode The HTTP status code of the navigation. * @return boolean Whether the promo was launched. */ public static boolean maybeLaunchPromoInfoBar(Context context, WebContents webContents, String url, boolean isErrorPage, boolean isFragmentNavigation, int statusCode) { ThreadUtils.assertOnUiThread(); if (webContents.isIncognito()) return false; if (isErrorPage) return false; if (isFragmentNavigation) return false; if (statusCode != HttpURLConnection.HTTP_OK) return false; if (!DataReductionPromoUtils.canShowPromos()) return false; // Don't show the infobar promo if neither the first run experience or second run promo has // been shown. if (!DataReductionPromoUtils.getDisplayedFreOrSecondRunPromo()) return false; // Don't show the promo if the user opted out on the first run experience promo. if (DataReductionPromoUtils.getOptedOutOnFrePromo()) return false; // Don't show the promo if the user has seen this infobar promo before. if (DataReductionPromoUtils.getDisplayedInfoBarPromo()) return false; // Only show the promo on HTTP pages. if (!GURLUtils.getScheme(url).concat("://").equals(UrlConstants.HTTP_SCHEME)) return false; int currentMilestone = VersionNumberGetter.getMilestoneFromVersionNumber( PrefServiceBridge.getInstance().getAboutVersionStrings().getApplicationVersion()); String freOrSecondRunVersion = DataReductionPromoUtils.getDisplayedFreOrSecondRunPromoVersion(); // Temporarily allowing disk access. TODO: Fix. See http://crbug.com/577185 StrictMode.ThreadPolicy oldPolicy = StrictMode.allowThreadDiskReads(); try { Calendar releaseDateOfM48Stable = Calendar.getInstance(TimeZone.getTimeZone("UTC")); releaseDateOfM48Stable.setTime(Date.valueOf(M48_STABLE_RELEASE_DATE)); long packageInstallTime = getPackageInstallTime(context); // The boolean pref that stores whether user opted out on the first run experience was // added in M51. If the last promo was shown before M51, then |freOrSecondRunVersion| // will be empty. If Chrome was installed after the FRE promo was added in M48 and // beforeM51,assume the user opted out from the FRE and don't show the infobar. if (freOrSecondRunVersion.isEmpty() && packageInstallTime > releaseDateOfM48Stable.getTimeInMillis()) { return false; } // Only show the promo if the current version is at least two milestones after the last // promo was displayed or the command line switch is on. If the last promo was shown // before M51 then |freOrSecondRunVersion| will be empty and it is safe to show the // infobar promo. if (!CommandLine.getInstance().hasSwitch(ENABLE_INFOBAR_SWITCH) && !freOrSecondRunVersion.isEmpty() && currentMilestone < VersionNumberGetter .getMilestoneFromVersionNumber(freOrSecondRunVersion) + 2) { return false; } DataReductionPromoInfoBar.launch(webContents, BitmapFactory.decodeResource(context.getResources(), R.drawable.infobar_chrome), context.getString(R.string.data_reduction_promo_infobar_title), context.getString(R.string.data_reduction_promo_infobar_text), context.getString(R.string.data_reduction_promo_infobar_button), context.getString(R.string.no_thanks)); return true; } finally { StrictMode.setThreadPolicy(oldPolicy); } }
Example #5
Source File: DataReductionPromoInfoBar.java From 365browser with Apache License 2.0 | 4 votes |
/** * Launch the data reduction infobar promo, if it needs to be displayed. * * @param context An Android context. * @param webContents The WebContents of the tab on which the infobar should show. * @param url The URL of the page on which the infobar should show. * @param isFragmentNavigation Whether the main frame navigation did not cause changes to the * document (for example scrolling to a named anchor PopState). * @param statusCode The HTTP status code of the navigation. * @return boolean Whether the promo was launched. */ public static boolean maybeLaunchPromoInfoBar(Context context, WebContents webContents, String url, boolean isErrorPage, boolean isFragmentNavigation, int statusCode) { ThreadUtils.assertOnUiThread(); if (webContents.isIncognito()) return false; if (isErrorPage) return false; if (isFragmentNavigation) return false; if (statusCode != HttpURLConnection.HTTP_OK) return false; if (!DataReductionPromoUtils.canShowPromos()) return false; // Don't show the infobar promo if neither the first run experience or second run promo has // been shown. if (!DataReductionPromoUtils.getDisplayedFreOrSecondRunPromo()) return false; // Don't show the promo if the user opted out on the first run experience promo. if (DataReductionPromoUtils.getOptedOutOnFrePromo()) return false; // Don't show the promo if the user has seen this infobar promo before. if (DataReductionPromoUtils.getDisplayedInfoBarPromo()) return false; // Only show the promo on HTTP pages. if (!GURLUtils.getScheme(url).equals(UrlConstants.HTTP_SCHEME)) return false; int currentMilestone = VersionNumberGetter.getMilestoneFromVersionNumber( PrefServiceBridge.getInstance().getAboutVersionStrings().getApplicationVersion()); String freOrSecondRunVersion = DataReductionPromoUtils.getDisplayedFreOrSecondRunPromoVersion(); // Temporarily allowing disk access. TODO: Fix. See http://crbug.com/577185 StrictMode.ThreadPolicy oldPolicy = StrictMode.allowThreadDiskReads(); try { Calendar releaseDateOfM48Stable = Calendar.getInstance(TimeZone.getTimeZone("UTC")); releaseDateOfM48Stable.setTime(Date.valueOf(M48_STABLE_RELEASE_DATE)); long packageInstallTime = getPackageInstallTime(context); // The boolean pref that stores whether user opted out on the first run experience was // added in M51. If the last promo was shown before M51, then |freOrSecondRunVersion| // will be empty. If Chrome was installed after the FRE promo was added in M48 and // beforeM51,assume the user opted out from the FRE and don't show the infobar. if (freOrSecondRunVersion.isEmpty() && packageInstallTime > releaseDateOfM48Stable.getTimeInMillis()) { return false; } // Only show the promo if the current version is at least two milestones after the last // promo was displayed or the command line switch is on. If the last promo was shown // before M51 then |freOrSecondRunVersion| will be empty and it is safe to show the // infobar promo. if (!CommandLine.getInstance().hasSwitch(ENABLE_INFOBAR_SWITCH) && !freOrSecondRunVersion.isEmpty() && currentMilestone < VersionNumberGetter .getMilestoneFromVersionNumber(freOrSecondRunVersion) + 2) { return false; } DataReductionPromoInfoBar.launch(webContents, BitmapFactory.decodeResource(context.getResources(), R.drawable.infobar_chrome), context.getString(R.string.data_reduction_promo_infobar_title), context.getString(R.string.data_reduction_promo_infobar_text), context.getString(R.string.data_reduction_promo_infobar_button), context.getString(R.string.no_thanks)); return true; } finally { StrictMode.setThreadPolicy(oldPolicy); } }