javascript - 将长js代码加载到android webview html文件中
问题描述
我在将 js 加载到我的 android webview 时遇到问题。这是我的安卓网页视图:
QuizWebView = findViewById(R.id.QuizWebView);
QuizWebView.getSettings().setJavaScriptEnabled(true);
QuizWebView.setWebChromeClient(new WebChromeClient());
QuizWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
QuizWebView.getSettings().setAllowUniversalAccessFromFileURLs(true);
QuizWebView.getSettings().setAllowFileAccessFromFileURLs(true);
}
QuizWebView.loadUrl("file:///android_asset/quiz-app-remastered-master/index.html");
当我尝试加载像“警报”功能这样的短 js 时,它的工作完美。
jsToLoad="alert('ddd')";
QuizWebView.loadUrl("javascript: "+jsToLoad);
将显示警报。
但是当我用另一个代码尝试这个时:
jsToLoad="const STORE = {questions:{accessibility: [{question: \"What is one thing the lang property used for?\",code: `<html lang=\"en\">`,answers: [\"To set what version of HTML the page uses\",\"To determine the linear angle for CSS properties\",\"To restrict the page to only be viewed in certain regions\",\"To be used by search engines to return language specific results\"],correctAnswer: \"To be used by search engines to return language specific results\"}]}};";
JS 代码不工作......我试图直接在我的 index.html 文件中编写这段代码并且代码工作,所以我的应用程序中的问题。
我不知道,也许无法以这种方式在我的应用程序中集成很长的 JS 代码?如果这是不可能的,也许我需要做的是创建一个临时 JS 文件,然后尝试将其加载到 index.html 中?我试图做类似的事情,但我没有那么成功..我很想得到指导和帮助。谢谢!
解决方案
推荐阅读
- python - Numpy:如何使用填充选择围绕选定的数组?
- java - 如何使用 spring jdbctemplate 查询搜索 H2 CLOB 数据类型列
- qt - Qt 作为统一的 UI
- sockets - 对 WebServer 的请求如何在后台工作?
- python - 尝试调整框架大小以适合模型
- java - 带有水平文本的 JavaFX 垂直制表符
- javascript - jquery remove class / addClass 没有做任何事情
- r - 根据给定区域中黑人的百分比,使用 R 创建分类变量
- firebase - Cloud Build Trigger - Not in Firebase app directory 错误
- swift - 在集合视图中使用 AVPlayer 播放音频