如何修复ERR_UNKNOWN_URL_SCHEME错误?(9种方法)

已发表: 2023-10-01

err_unknown_url_scheme 错误是一个非常常见的浏览器问题,特别是对于 Chromium 浏览器,当您尝试新的 Android 应用程序来测试其 Web 视图时,该错误会触发。 或者您设备上的应用程序无法处理与 URL 方案相关的特定操作。


目录
err_unknown_url_scheme 错误是什么意思?
是什么原因导致 err_unknown_url_scheme 错误?
如何修复 err_unknown_url_scheme 错误?
结论
经常问的问题

但这并不意味着您对此无能为力。 在本文中,我们将为您提供有关“err_unknown_url_scheme”错误的完整指南:它为什么会发生、它意味着什么以及如何修复它,所有这些都以非常全面的方式进行。

请继续关注并继续阅读本文。 让我们开始吧!


err_unknown_url_scheme 错误是什么意思?

这个特殊的 err_unknown_url_scheme 错误特别发生在 Chromium 浏览器中,它是由 Chrome 40 版本中首次检测到的错误导致的。 从那以后,它就变得很突出。

它只是表明您尝试使用浏览器无法识别或支持的方案或协议打开 URL。

URL 方案是 URL 中的前缀,指示应如何访问资源。 您可能熟悉的常见 URL 方案是用于网页的“http://”和“https://”,以及用于电子邮件地址的“mailto://”。

然而,还有许多其他用于各种目的的 URL 方案,如果浏览器遇到不支持方案的 URL,它将显示“ ERR_UNKNOWN_URL_SCHEME ”错误。

为了更好地理解这一点,让我们考虑一个例子。

假设您想为 Google Play 商店开发一个本机应用程序。 为此,您必须使用 Android Studio,它是 Android 应用程序环境的官方集成开发环境。

由于您正在为用户开发 Android 应用程序,因此您还希望他们能够在该特定应用程序中查看 Web 浏览器内容,而无需在浏览器和您的应用程序之间来回切换。 否则,它可能会严重影响您的用户体验,这是您不希望发生的事情。

为了实现这一点,您需要添加一个名为“WebView”的类,该类允许您直接从本机应用程序显示 Web 内容。 但是,该浏览器不具有典型的浏览器功能,例如搜索栏或其他导航选项。 但是,它将成功呈现网页。

在此阶段,它可能会触发“ err_unknown_url_scheme ”错误。 发生这种情况可能是因为您请求的网站具有与移动设备不兼容的方案。


阅读: WordPress 中 HTTP 到 HTTPS 迁移的完整指南


是什么原因导致 err_unknown_url_scheme 错误?

1.Chrome浏览器问题

发生 err_unknown_url_scheme 错误的主要原因之一是 Google Chrome 网络视图无法识别 URL 方案。

然而,Chrome Webview 对于本机应用程序非常有用,但问题是它只能识别两种 URL 方案,即 http:// 和 https:// 协议。

对于其他 URL 方案,例如 mailto://、app://、mail://、buy://、market://、whtsapp://。 等等,它将显示 err_unknown_url_scheme 错误。


注意: URL 方案是一组规则或协议,用于定义 URL 的结构以及软件应用程序和 Web 浏览器应如何解释它们。


但是,如果您是应用程序开发人员,则只需在本机应用程序中使用特定的 URL 方案即可防止此错误发生。

3. 协议之间的不兼容

如果您的网络浏览器和程序的协议之间存在兼容性问题,也可能会触发 net::err_unknown_url_scheme 错误。 例如,如果您从特定网站或通过应用程序拨打电话号码并尝试访问重定向 URL,则会出现此特定错误。

4. 印刷错误

另一个最常见的原因是 URL 中的拼写错误。 如果 URL 中有错误,例如缺少或不正确的方案,浏览器将无法识别它。

5. 定制方案

某些网站和应用程序出于特定目的使用自定义 URL 方案。 如果您的浏览器不理解这些自定义方案,它将显示错误。

6.过时或不兼容的浏览器

较旧或不太常用的 Web 浏览器可能不支持某些 URL 方案,或者可能存在触发此错误的错误。 更新您的浏览器可以帮助解决此问题。

7. 浏览器扩展

浏览器扩展或附加组件有时会干扰 URL 处理。 禁用扩展或对扩展进行故障排除可能会解决该错误。

8. 网站问题

在某些情况下,错误可能是由网站端的问题引起的。 该网站可能未正确配置以处理某些 URL 方案。

9. 操作系统限制

在移动设备上,操作系统可能对哪些应用程序可以处理特定的 URL 方案有限制。 如果 URL 方案与应用程序的功能不匹配,则可能会导致此错误。


如何修复 err_unknown_url_scheme 错误?

无论您是开发人员还是前端用户,这些都是可以帮助您修复 err_unknwon_url_scheme 错误的六种最佳方法。 只需首先遵循这些简单的步骤,然后我们就可以了解更多技术内容。

  • 清除浏览器缓存和 Cookie
  • 暂时停用 Chrome 扩展程序
  • 创建新的用户 Chrome 个人资料
  • 在 Chrome 中禁用硬件加速
  • 尝试使用非 Chromium 浏览器作为默认浏览器
  • 关闭您的防火墙或防病毒程序
  • 尝试在新窗口中打开
  • 添加新的“意图加载外部应用程序”
  • 禁用任何非标准 URL 方案

1. 清除浏览器缓存和 Cookie

浏览器缓存旨在通过将网站文件存储在缓存中来提升用户体验,以便您下次再次访问该网站时可以更快地加载。 但随着时间的推移,该缓存数据会被损坏或过时,从而导致触发此类错误。 因此,要解决此问题,您必须完全清除浏览器缓存和 cookie。

在 Google Chrome 中,转到“设置”>“隐私和安全”>“清除浏览数据”> 您可以取消选中“浏览历史记录”,并选中 Cookie 和其他网站数据以及缓存图像>“清除数据”。

或者,您可以直接在 Chrome 浏览器中输入此地址:chrome://settings/privacy。 它将带您进入隐私设置,您可以在其中单击“清除浏览数据”。

Chrome Privacy and Security
Chrome 隐私和安全

在弹出窗口中,您会看到很多其他选项,但您必须选择如下:

  • 选择时间范围为“所有时间”。
  • 选择cookie和其他站点数据以及缓存图像(您也可以选择浏览历史记录)
  • 单击清除数据按钮。
Clearing chrome browsing history and cache memory
清除Chrome浏览历史记录和缓存

2. 暂时停用 Chrome 扩展程序

只需修复 Chrome 扩展程序即可轻松修复许多特定于 Chrome 的错误。 有时,这些扩展的编码很差,可能是触发此类错误消息的罪魁祸首。 要确定这是否导致问题,您必须暂时停用所有这些。

要查看所有已安装的 Chrome 扩展程序,请在 URL 栏中输入“ chrome://extensions/ ”。

Disable Chrome Extensions
禁用 Chrome 扩展程序

之后,禁用所有活动的 Chrome 扩展并检查错误是否已解决。 如果已解决,则表示错误是由安装的扩展引起的。 要识别罪魁祸首扩展程序,请一次启用一个插件,并每次都尝试访问该网站。


3. 创建新的用户 Chrome 个人资料

如果上述方法无法修复 err_unknown_url_scheme 错误,您可以尝试创建新用户的 Chrome 个人资料。

为此,请转到位于 Chrome 浏览器右上角的用户个人资料,其中显示了您的个人资料图片。 单击您的个人资料图片 > 在弹出窗口底部单击“+”以添加新的用户个人资料。

Create a new Chrome profile How to Fix the ERR_UNKNOWN_URL_SCHEME Error?(9 Methods)

这将允许您创建新的 Chrome 用户个人资料。 按照弹出窗口中显示的说明进行操作。

您可以创建全新的 Chrome 用户个人资料,也可以继续使用现有的 Chrome 个人资料。

Set up Chrome profile How to Fix the ERR_UNKNOWN_URL_SCHEME Error?(9 Methods)
设置您的新 Chrome 个人资料

之后,按照说明进行操作,这将帮助您进行定制和个性化,然后就完成了。

Customize Chrome profile
自定义 Chrome 配置文件

现在尝试访问您尝试访问的网页,看看错误是否仍然存在。 如果没有帮助,请按照下一个方法操作。


4.在Chrome中禁用硬件加速

Chrome 使用计算机的硬件组件(例如图形处理单元 (GPU))在网络浏览器中执行某些任务和进程。

大多数时候,该技术将浏览器的一些任务从中央处理单元 (CPU) 卸载到专用硬件组件,从而提高了某些情况下的性能和响应能力。

但是,这个功能并不总是那么有效,有时它也会滞后、崩溃,甚至冻结。 因此,要解决此问题,您需要禁用或关闭此硬件加速功能。

为此,请打开 Chrome 浏览器 > 设置 > 系统选项卡 > 切换按钮以关闭 Chrome 中的硬件加速。

Hardware Acceleration in Chrome
Chrome 中的硬件加速

5. 尝试使用非 Chromium 浏览器作为默认浏览器

如果 err_unknown_url_scheme 错误继续发生,您可以尝试使用默认的非铬浏览器,例如 Microsoft Edge 或 Mozilla Firefox。 这是因为默认浏览器是自动打开链接的浏览器,并且通常是预装在您的设备或 Google Chrome 上的浏览​​器。

更改设备上的默认浏览器的过程可能会因您使用的设备而异。 对于 Windows 10 用户:

第 1 步:单击屏幕左下角的“开始”按钮(Windows 图标)。

第 2 步:单击“设置”齿轮图标,它看起来像一个齿轮。

步骤 3:在“设置”窗口中,找到并单击“应用程序”选项。

第 4 步:在“应用程序”部分的左侧,您将看到类别列表。 单击默认应用程序。

第 5 步:向下滚动,直到看到“Web 浏览器”部分。 这里列出了您当前的默认 Web 浏览器(通常是 Microsoft Edge)。

步骤 6:单击当前默认浏览器的名称。 将出现已安装的网络浏览器的列表。

步骤 7:选择您想要设置为新默认值的网络浏览器。 单击它进行选择。

第 8 步: Windows 将要求您确认您的选择。 单击“始终切换”“切换”按钮(措辞可能因您的 Windows 版本而异)。

第 9 步:确认后,您的默认网络浏览器将更新为您选择的浏览器。

对于 macOS (Ventura) 用户,

第 1 步:导航至位于屏幕左上角的 Apple 菜单 ,然后选择“系统设置”。

第 2 步:现在单击侧边栏中的桌面和 Dock。

步骤 3:向下滚动并从右侧的“默认网络浏览器”菜单中选择一个网络浏览器。


6. 关闭防火墙或防病毒程序

有时,配置不当或错误的防病毒程序或防火墙设置也可能是触发 err_unknown_url_scheme 错误的原因。 要检查是否属于这种情况,请尝试暂时关闭防火墙或防病毒软件。

要禁用 Windows 设备中的防病毒程序,

步骤1:首先,您需要打开计算机的控制面板。 为此,请单击桌面上的“开始”菜单,然后在搜索字段中键入“control”。

步骤2:接下来,从控制面板选项中选择“系统和安全”。 这将带您进入一个新页面。

步骤 3:在新页面上,您将看到“ Windows Defender 防火墙”选项。 单击“允许应用程序或功能通过 Windows 防火墙”。

Allowing an app through Windows Firewall
允许应用程序通过 Windows 防火墙

步骤 4:在下一个窗口中,您将看到允许通过防火墙进行通信的应用程序和功能的列表。 要更改这些设置,请单击“更改设置”。

List of allowed apps in Windows Defender Firewall
Windows Defender 防火墙中允许的应用程序列表

步骤 5:如果您在列表中没有看到您的 DNS 客户端,您可以通过单击加号 (+) 图标来添加它。

步骤 6:要暂时禁用防火墙,请取消选中“Windows Defender 防火墙”旁边的框,然后单击“确定”保存更改。

步骤 7:或者,您可以通过查找 DNS 客户端或您想要配置的任何其他应用程序并选中或取消选中所需设置旁边的框来调整防火墙设置。

步骤 8:调整完设置后,单击“确定”保存更改。

对于 Mac 用户

单击 Mac PC 左上角的 Apple 图标,然后选择系统设置。

现在导航到网络 > 防火墙并将其切换为关闭。

如果上述方法都不起作用,那么现在需要联系可以帮助您解决此问题的应用程序开发人员。


7.尝试在新窗口中打开

到目前为止,我们已经解释了如何通过 Chrome 浏览器本身修复 err_unknown_url_scheme 错误。 现在是时候从开发人员的角度解决这个错误了。 这样,您的应用程序就不会出现任何问题。

您可以采取的最简单的方法之一是编辑 URL 的 href 代码。 只需添加 HTML 代码:

target="_blank"

此代码将指定浏览器应如何打开,并将在新窗口中打开 Webview。


注意:此方法在较短的时间内不会有效,因为打开新窗口可能会激怒和迷惑您的用户,可能会损害您应用程序的用户体验。 此特定代码行将删除“后退”按钮,从而使用户在应用程序的页面之间来回导航更具挑战性。


8.添加新的意图加载外部应用程序

如果你从事Android开发,你一定对“意图”很熟悉。 这是与 Android 操作系统和其他应用程序进行通信的一种方式。 通过此功能,您可以指定要执行的任何操作或要在设备上的应用程序或其他应用程序中调用的组件。

简而言之,它允许您控制应用程序与 Android 系统的其他部分或外部应用程序的交互方式。

例如,当您想要打开外部应用程序或处理应用程序内特定类型的链接时,您可以使用以下意图:

  • 电子邮件链接 ( mailto:// ):如果您的应用程序中有一个采用mailto://方案的电子邮件链接,则使用 Intent 可以指示 Android 在用户点击该链接时打开用户首选的电子邮件应用程序。
  • 地图链接( maps:// ):同样,如果您有一个带有maps://方案的地图链接,则意图可以启动用户首选的地图应用程序。
  • 电话 ( tel:// ) 和短信 ( sms:// ) 链接:这些方案可用于使用用户的默认电话和消息应用程序分别触发电话呼叫或短信。

要在代码中管理这些,您可以使用“ if ”语句来检查 URL 的方案。 如果该方案与tel://sms://mailto://geo://maps://唯一方案之一匹配,您可以使用意图打开相应的应用程序或执行所需的操作行动。 另一方面,如果 URL 以http://https://开头,您可以将其作为标准 Web 链接处理。

这是一个示例供您参考。 您可以添加特定于特定应用程序(本例中为 WhatsApp)的自定义 URL 方案。 这是实现 URL 加载覆盖的方法。

@Override
public boolean shouldOverrideUrlLoading (WebView view, String url) {
view.loadUrl (url);
if (url.startsWith (“whatsapp://”)) {
webview.stopLoading();
try {
Intent whatsappIntent = new Intent (Intent.ACTION_SEND);
whatsappIntent.setType (“text/plain”);
whatsappIntent.setPackage (“com.whatsapp”);
whatsappIntent.putExtra (Intent.EXTRA_TEXT, webview.getUrl() + ” – Shared from webview “);
startActivity (whatsappIntent);
} catch (android.content.ActivityNotFoundException ex) {
String MakeShortText = “Whatsapp is not installed”;
Toast.makeText (WebactivityTab1.this, MakeShortText, Toast.LENGTH_SHORT).show();
}
};
};

用户将被发送到他们安装的 WhatsApp 应用程序,并且用户将能够在其设备上打开它。 但是,如果 WhatsApp 在用户的设备上不可用,则会出现错误提示消息,指出“WhatsApp 未安装”。”

因此,意图可以帮助您使您的应用程序与 Android 设备上的其他应用程序和服务无缝交互,从而确保更流畅、更集成的用户体验。


9. 禁用任何非标准 URL 方案

您可以执行的另一种替代方法是完全禁用除 http:// 和 https:// 之外的任何非标准 URL 方案,而不是添加新意图来加载外部应用程序。

这将完全解决问题,并且您将无法使用任何自定义或奇特的意图。

要在 HTML 中执行此操作,请遵循下面给出的脚本:

@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
if (url.startsWith("http") || url.startsWith("https")) {
return true;
}else {
webview.stopLoading();
webview.goBack();
Toast.makeText(MainActivity.this, "Error: Link not supported",
Toast.LENGTH_SHORT).show();
}
return false;
}

现在,每当用户单击非标准 URL 链接时,都会出现一条弹出消息,指出“错误:不支持链接”。 这样用户在看到此错误消息后就不会继续操作。


结论

这篇文章重点介绍了 err_unknown_url_scheme 错误的各个方面,例如其含义、原因以及最佳的故障排除方法。 这是我们上面提到的方法的总结。

  • 清除浏览器缓存和 Cookie
  • 暂时停用 Chrome 扩展程序
  • 创建新的用户 Chrome 个人资料
  • 在 Chrome 中禁用硬件加速
  • 尝试使用非 Chromium 浏览器作为默认浏览器
  • 关闭您的防火墙或防病毒程序
  • 尝试在新窗口中打开
  • 添加新的“意图加载外部应用程序”
  • 禁用任何非标准 URL 方案

您可以尝试所有这些最佳解决方案,并在下面的评论部分告诉我们哪一个解决了 err_unknown_url_scheme 错误。


经常问的问题

未知的 URL 方案是什么意思?

它只是表明您尝试使用浏览器无法识别或支持的方案或协议打开 URL。

如何修复 err_unknown_url_scheme 错误?

您可以通过以下方法修复 err_unknown_url_scheme 错误:
1. 清除浏览器缓存和 Cookie
2. 暂时停用 Chrome 扩展程序
3. 创建新的用户 Chrome 个人资料
4.在Chrome中禁用硬件加速
5. 尝试使用非 Chromium 浏览器作为默认浏览器
6. 关闭防火墙或防病毒程序
7.尝试在新窗口中打开
8.添加新的意图加载外部应用程序
9. 禁用任何非标准 URL 方案