【问题标题】:Android Studio (Web page help) net : ERR_FILE_NOT_FOUNDAndroid Studio(网页帮助)网络:ERR_FILE_NOT_FOUND
【发布时间】:2019-07-07 15:31:05
【问题描述】:

我试图从我的本地文件在 android studio 中实现我的 web 应用程序/页面,我按照官方文档并在 xml 中制作了一个 webview 按钮,并声明:

<uses-permission android:name="android.permission.INTERNET" /> 

在清单文件中。我的 java 活动代码如下:

package samples.opencv.myapplication;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class MainActivity extends AppCompatActivity {

    private WebView webview;

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

        webview =(WebView)findViewById(R.id.webview);

        webview.setWebViewClient(new WebViewClient());
        webview.getSettings().setJavaScriptEnabled(true);
        webview.getSettings().setDomStorageEnabled(true);
        webview.setOverScrollMode(WebView.OVER_SCROLL_NEVER);
        webview.loadUrl("file:///C:/Users/olive/OneDrive/Documents/ComputerScience/Project/Atom/index.html");

    }
}

但我在模拟器上收到错误消息,说由于找不到文件而无法加载网页。

This 是我的 HTML 文件 This是JS文件

【问题讨论】:

    标签: javascript java android html android-studio


    【解决方案1】:

    把你的web资源放到assets文件夹下,一般在&lt;project&gt;/src/main/assets下,因为模拟器看不到你电脑根".../C:/Users/olive/OneDrive/Documents/ComputerScience/..."下的文件

    然后调用:

    webView.loadUrl("file:///android_asset/index.html");
    

    请记住,在 Android 应用程序中,可以从 3 种类型的位置读取文件:

    • 内部存储:每个应用都有自己的,文件名是相对的 这个位置。 URL 格式为 file:///myFolder/myFile.html
    • 外部存储:需要许可并且可能并不总是可用。 通过调用获取根文件夹 Environment.getExternalStorageDirectory()。因此,构建 URL 使用:字符串 url = "file:///" + Environment.getExternalStorageDirectory().toString() + File.separator + "myFolder/myFile.html"
    • 资产:存储在 apk 中。只读访问。 URL 形成 file:///android_asset/myFolder/myFile.html(另请参阅加载 Android 资源到 WebView 中)

    希望对你有帮助。

    【讨论】:

    • 谢谢你,我刚刚做到了!现在虽然它没有给我那个错误,但网页没有完全加载——我把我所有的网页文件都放在了 assets 文件夹中,但是某些图像和摄像头 feed 没有加载等等。
    • 可能你的html页面没有找到所有资源的正确路径,但是没有代码很难说
    • 它在 Atom 等其他文本编辑器上运行良好,但在 android studio 上存在问题
    • 您的 html 中是否有硬编码路径,例如“C:/Users/olive/OneDrive...”?
    • 不,如果你愿意,我可以附上我的 html 文件
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-16
    • 2010-12-06
    • 2011-02-28
    • 2017-10-25
    • 2012-03-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多