无法从appcelerator中的WebView打开相机

时间:2016-02-17 19:31:34

标签: javascript android webview appcelerator appcelerator-titanium

目前我正在加载webview中的网址,通过在浏览器中使用相同的网址,它可以“通过显示访问摄像头的警报”来访问摄像头,但是当我在webview中使用相同的网址时appcelerator无法访问相机的应用程序。如果指导我解决这个问题。

提前致谢。

1 个答案:

答案 0 :(得分:0)

您可以从webview触发Ti事件,并在事件监听器内部访问摄像头

前: -

webview文件

<html>
    <head>
        <script>
            Ti.App.addEventListener("app:fromTitanium", function(e) {
                alert(e.message);
            });
        </script>
    </head>
    <body>
        <button onclick="Ti.App.fireEvent('app:fromWebView', { message: 'event fired from WebView, handled in Titanium' });">fromWebView</button>
    </body>
</html>

Js档案

var win = Ti.UI.createWindow();
var webview = Ti.UI.createWebView({
    url: 'logging.html'
});
var button = Ti.UI.createButton({
    title: 'fromTitanium',
    height: '50dp',
    width: '130dp'
});
button.addEventListener('click', function(e) {
    Ti.App.fireEvent('app:fromTitanium', { message: 'event fired from Titanium, handled in WebView' });
});
Ti.App.addEventListener('app:fromWebView', function(e) {
    alert(e.message);
});
win.add(webview);
win.add(button);
win.open();

更多详情http://docs.appcelerator.com/platform/latest/#!/guide/Communication_Between_WebViews_and_Titanium