Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将特定资源(图像等)的加载委托给Android WebView中的本地文件系统?_Android_Webview - Fatal编程技术网

将特定资源(图像等)的加载委托给Android WebView中的本地文件系统?

将特定资源(图像等)的加载委托给Android WebView中的本地文件系统?,android,webview,Android,Webview,我在我的Android应用程序中使用WebView来加载我们的Web应用程序,例如 @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); _web_view = (WebView) findViewById(R.id.web); _web_view

我在我的Android应用程序中使用WebView来加载我们的Web应用程序,例如

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    _web_view = (WebView) findViewById(R.id.web);
    _web_view.loadUrl(R.strings.url);
}
到目前为止,一切顺利

我想做的是,当WebView请求可用资产时,有选择地选择从本地Android文件系统加载它们。我的想法是,通过将静态图像资产打包到Android中并从文件系统提供服务,而不是从web服务器请求它们,我将节省大量的加载时间和带宽

我看到WebViewClient类有一个onLoadResource方法。这与我想要的非常接近,只是我想有一种方法告诉应用程序“不,不要从那个url下载,而是使用这个url”(并指向本地文件系统)

到目前为止,我能想到的最好的方法是简单地使用指向Android文件系统的.html文件的不同副本,但我更愿意有选择地替换客户端上的资产,而不是在服务器上维护两个html副本


谢谢

请看一下重写。这似乎是你想要的。缺点是需要API 11+。

看看重写。这似乎是你想要的。缺点是需要API 11+。

Nice!不知道我怎么会错过这个;我发誓我看过文件;)美好的不知道我怎么会错过这个;我发誓我看过文件;)