如何从Android应用程序中隐藏Google Chrome中的网页

时间:2016-06-08 07:32:55

标签: java android google-chrome

我花了很多时间在这上面并且无法弄清楚这一点。

我需要以隐身模式启动Chrome浏览器。

我的代码:

    private void launchBrowser() {
    String url = "http://foyr.com";
    Intent launchGoogleChrome = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
    launchGoogleChrome.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    launchGoogleChrome.setPackage("com.android.chrome");
    try {
        startActivity(launchGoogleChrome);
    } catch (ActivityNotFoundException e) {
        launchGoogleChrome.setPackage(null);
        startActivity(launchGoogleChrome);
    }
}

我发现了几个帖子,但无法找到解决方案。 here

这个link让我对隐身模式有了一些了解,但我也试过了。

    private void launchBrowser() {
    String url = "http://foyr.com";
    Intent launchGoogleChrome = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
    launchGoogleChrome.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    launchGoogleChrome.setPackage("com.android.chrome");
    launchGoogleChrome.putExtra("com.android.chrome.EXTRA_OPEN_NEW_INCOGNITO_TAB", true);
    try {
        startActivity(launchGoogleChrome);
    } catch (ActivityNotFoundException e) {
        launchGoogleChrome.setPackage(null);
        startActivity(launchGoogleChrome);
    }
}

但Chrome浏览器没有从应用程序接收任何意图信息。任何人都可以帮助我在哪里出错并做什么?

1 个答案:

答案 0 :(得分:3)

来自源代码:

// "Open new incognito tab" is currently limited to Chrome or first parties.
if (!isInternal
        && IntentUtils.safeGetBooleanExtra(
                   intent, EXTRA_OPEN_NEW_INCOGNITO_TAB, false)) {
    return true;
}

除非您要求Chrome或Google明确允许,否则额外的内容似乎无效。