在WebView内的链接上提供JavascriptInterface

时间:2015-07-07 10:13:34

标签: javascript java android android-webview

我有一个WebView,它像浏览器一样用于显示和浏览我网站的不同页面。

WebView仅在给定的Activity中加载一次,然后通过单击WebView中的链接来加载其他加载。

以下是我想要做的事情:

我想添加一个JavascriptInterface对象,每次加载新URL时都可以使用它。

我尝试在onPageFinished中添加它但它不起作用可能是因为我们需要在JavascriptInterface注入页面后重新加载页面。

我的问题:

如何确保每次将页面加载到WebView中时,都会有一个与我相关联的Object(包含带有@JavascriptInterface注释的函数)。

我为什么要这样做?

因为我正在设计一个可重用的API,可以将多个网站加载到同一个WebView中的应用程序使用它。

1 个答案:

答案 0 :(得分:0)

在夸大布局(或手动创建WebView)之后,您只需要为每个WebView实例注入一次对象,通常在您的活动的onCreate方法中进行。然后,在所有后续页面加载期间,此注入的对象将在此WebView中可用。

尝试从onPageFinished注入一个对象不是一个好主意。