我想使用Worklight在远程HTML页面(http://xxx.com)中调用phonegap API(例如Camera,File API)。
我试图使用(1)iFrame和(2)嵌入WebView。
(1)iFrame
<iframe src="http://xxx.com"></iframe>
谷歌搜索了一段时间后,据说由于相同的原始政策,它不会成功。相反,它可以通过HTML postMessage实现。我做了一个简单的测试,它的工作原理。
但是因为我的用例,我想在远程HTML页面上执行文件上传。使用相机API捕获照片后,我得到了一个FILE_URI / DATA_URI。除了在那里使用File API之外,我无法在远程HTML页面上传文件。因此,我的目标是直接在远程页面中调用phonegap API,这是我的下一步。
(2)嵌入WebView
我尝试在Android原生代码中添加webview.loadUrl("http://xxx.com")
public class TestActivity extends DroidGap {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
WebView webview = (WebView) findViewById(R.id.wv);
webview.loadUrl("http://www.xxx.com");
}
}
在我的远程HTML页面中,我添加了
<script type="text/javascript" src="cordova.js"></script>
<script type="text/javascript">
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
alert("OK!");
}
</script>
测试是否准备好使用phonegap API。
但是,onDeviceReady永远不会被解雇。
这里有什么不对吗?或者是否可以访问嵌入在webview中的远程HTML页面中的phonegap API?
答案 0 :(得分:0)
webView.getSettings()setJavaScriptEnabled(真);