webview无法从SD卡加载HTML文件?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (24)

我正在尝试从SD卡加载html文件。

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    addB = (Button) findViewById(R.id.add);
    webComp = (WebView) findViewById(R.id.webC);

    WebSettings webSettings = webComp.getSettings();
    webSettings.setJavaScriptEnabled(true);
    webSettings.setSupportZoom(false);
    webSettings.setAllowFileAccess(true);
    webSettings.setLoadsImagesAutomatically(true);
    webSettings.setSavePassword(false);
    webSettings.setSaveFormData(false);
    webSettings.setJavaScriptEnabled(true);        

    webComp.setWebViewClient(new HelloWebViewClient());                    



    webComp.loadUrl("/sdcard/FMS/1/message.html");            



}
提问于
用户回答回答于

你不应该像这样硬编码SD卡的目录。它通常在/mnt/sdcard/但是这是不能保证的。还应该始终检查SD卡是否存在并首先安装!

使用以下内容:

if (!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
    Log.d(TAG, "No SDCARD");
} else {
    webComp.loadUrl("file://"+Environment.getExternalStorageDirectory()+"/FMS/1/message.html");
}
用户回答回答于

我认为url是文件:///sdCard/fms/1/message.html

扫码关注云+社区