如何在 WebView Android 中包含 JavaScript
How to include JavaScript in WebView Android
我有一个小的 HTML/CSS/JS 应用程序。我希望它在 Android 上传输。我知道可以使用 React Native 或 WebView 来制作,但由于我的应用程序很小,所以我决定使用 WebView。 HTML 和 CSS 工作正常,但 JS 不是。
这是代码:
public class MainActivity extends AppCompatActivity {
protected WebView calculator;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// init
calculator = (WebView) findViewById(R.id.calculator);
// settings
calculator.setInitialScale(1);
WebSettings webSettings = calculator.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setUseWideViewPort(true);
webSettings.setLoadWithOverviewMode(true);
webSettings.setAllowContentAccess(true);
webSettings.setDomStorageEnabled(true);
webSettings.setAllowFileAccess(true);
// load
calculator.loadUrl("file:///android_asset/calculator/index.html");
}
}
是否需要通过接口在JS和Java之间架起一座桥梁?如果答案是肯定的,那就意味着几乎所有代码都将写在 Java 上,我看不出有什么理由用 WebView 来写,因为我可以在 java 上写。我不想写 Java.
由于版本冲突,JavaScript 无效。 JavaScript 的一些新功能在 Android 5.1.
中不起作用
我有一个小的 HTML/CSS/JS 应用程序。我希望它在 Android 上传输。我知道可以使用 React Native 或 WebView 来制作,但由于我的应用程序很小,所以我决定使用 WebView。 HTML 和 CSS 工作正常,但 JS 不是。 这是代码:
public class MainActivity extends AppCompatActivity {
protected WebView calculator;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// init
calculator = (WebView) findViewById(R.id.calculator);
// settings
calculator.setInitialScale(1);
WebSettings webSettings = calculator.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setUseWideViewPort(true);
webSettings.setLoadWithOverviewMode(true);
webSettings.setAllowContentAccess(true);
webSettings.setDomStorageEnabled(true);
webSettings.setAllowFileAccess(true);
// load
calculator.loadUrl("file:///android_asset/calculator/index.html");
}
}
是否需要通过接口在JS和Java之间架起一座桥梁?如果答案是肯定的,那就意味着几乎所有代码都将写在 Java 上,我看不出有什么理由用 WebView 来写,因为我可以在 java 上写。我不想写 Java.
JavaScript 无效。 JavaScript 的一些新功能在 Android 5.1.
中不起作用