Android|WebView 禁止长按,限制非白名单域名的跳转层级

💡 原文中文,约1600字,阅读约需4分钟。
📝

内容提要

用户反馈称在隐私协议界面上可以跳转到百度搜索页面,希望所有操作保持在APP内。解决思路是禁用WebView的长按选择文字功能,允许白名单域名页面任意加载,非白名单域名页面通过白名单域名页面跳转,不再响应超链接。经测试达到了想要的效果。

🎯

关键要点

  • 用户反馈在隐私协议界面可以跳转到百度搜索页面,希望所有操作保持在APP内。
  • 现状分析显示WebView的长按选择文字功能禁用对功能无影响,隐私协议中的链接需限制跳转。
  • 解决思路是禁用WebView的长按选择文字功能,允许白名单域名页面任意加载,非白名单域名页面通过白名单域名页面跳转。
  • 代码实现中设置了白名单域名,屏蔽长按弹出的菜单,并限制非白名单域名的链接跳转。
  • 经过测试,解决方案达到了预期效果。
➡️

继续阅读