我的意思是没有cordova或其他框架。我非常确定我需要编写Java代码并通过android webview以某种方式将其链接到html5。 如果可能的话,可以举一个例子来连接相机或其他传感器。
答案 0 :(得分:1)
某些传感器具有JavaScript API,例如geolocation,orientation (gyroscope)和battery。要访问相机,您可以使用MediaDevices.getUserMedia
,但是,这仍处于试验阶段,并非所有Android设备都不支持。有关更多信息,请参阅this link。
答案 1 :(得分:0)
查看JavascriptInterface
https://developer.android.com/reference/android/webkit/WebView.html https://developer.android.com/guide/webapps/webview.html
具体来说,addJavascriptInterface(java.lang.Object,java.lang.String))
@JavascriptInterface
class JsInterface {
public void startCamera() { ... }
}
WebView myWebView = (WebView) findViewById(R.id.webview);
WebSettings webSettings = myWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
webView.addJavascriptInterface(new JsInterface(), "androidInterface");
基本上,添加JavascriptInterface,并在Web视图上启用javascript。然后在您的javascript中,您可以检测界面是否存在如下:
if ("undefined" != typeof androidInterface) {
androidInterface.startCamera();
}
现在,在startCamera的Java代码中,您可以执行任何您需要完成的本机操作。