gpt4 book ai didi

android - 如何在 Android 应用程序的 WebView 中启用深度链接?

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:34:53 25 4
gpt4 key购买 nike

我正在尝试在 Android 应用中实现深度链接。

当我在 Android 浏览器(如 Chrome)上单击自定义 url (xxxx://repost?id=12) 的深层链接时,我的应用程序打开并且运行良好。

问题是,在应用程序中,有一个 webView 小部件,我也想在那里进行深层链接工作。

目前,它显示无法连接到服务器错误。

提前致谢。

最佳答案

这是 android web View 的问题,因为它将所有内容都视为 URL,但移动设备上的 chrome 等其他浏览器会拦截该方案,操作系统将完成其余工作以打开相应的应用程序。要实现这一点,您需要修改您的 WebView shouldOverrideUrlLoading 函数,如下所示:

 @Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
LogUtils.info(TAG, "shouldOverrideUrlLoading: " + url);
Intent intent;

if (url.contains(AppConstants.DEEP_LINK_PREFIX)) {
intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse(url));
startActivity(intent);

return true;
}
}

在上面的代码中,将 AppConstants.DEEP_LINK_PREFIX 替换为您的 url 方案,例如。

android-app://your package

希望这对您有所帮助!

关于android - 如何在 Android 应用程序的 WebView 中启用深度链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25672330/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com