我们正在尝试创建一个相对较薄的cordova应用程序,以部署到Windows Phone 8.1平台 它将javascript应用程序从远程服务器加载到其主webView中,但也保持对cordova / phonegap插件的访问。 我们已在Android中成功完成此操作(请参阅本文的底部)。
远程应用程序需要以下功能。
这是可能的,如果是这样的话?
window.location = remoteUrl ;
导致remoteUrl在系统浏览器中打开。这不是我们要求的。
Windows平台的inapp浏览器略有不同 在cordova wiki中描述。它表明
window.open('http://whitelisted-url.com', '_self');
将打开Cordova WebView中的URL。这不会发生。
我们可以手动创建Web视图并将其指向远程应用程序
var wv = dodument.createElement('x-ms-webview');
wv.style.width = "100%";
wv.style.height = "100%";
wv.navigate(remoteUrl);
document.body.appendChild(wv);
然而,即使服务器,这也不允许我们访问cordova插件 将cordova.js文件作为下载的应用程序的一部分提供。
还不确定webview是如何打包的,以及缓存数据之间的持久性 执行windows store app。
包括inappBrowser插件。
config.xml中
<access origin="*" />
在Android Play商店应用程序中,我们执行:
function launchRemote()
{
window.open(remoteUrl,'_self');
}
document.addEventListener('deviceready', launchRemote, false);
远程服务应用程序启动页面包含条目
<script type="text/javascript" src="cordova.js"></script>
并将cordova.js,cordova_plugins.js文件和插件目录复制到服务器 来自cordova项目平台\ android \ assets \ www direcory 跑完后
cordova build android
cordova 4.0.0 Cordova main docs
答案 0 :(得分:0)
在加载webView后,您是否只是尝试创建一个脚本元素?
尝试设置此代码:
`var script = document.createElement('script');
script.onload = function() {
alert("Script loaded and ready"); //callback function
};
script.src = "http://whatever.com/the/script.js";
document.getElementsByTagName('head')[0].appendChild(script);`
on the function&#34; onDeviceReady&#34;。