2012-08-22 113 views
0

我写的Android/IOS混合的应用程序,以使对网络的包,我想用同样的观点(HTML5)为我的行动网路应用程式。分化混合应用程序或Web应用程序

有没有办法通过的jQuery或纯JavaScript来识别,加载的东西是否是混合应用或移动网络,这样我可以为移动网络和混合应用条件显示隐藏的组件。

+0

Web应用程序将运行在几乎所有的智能手机上,而本地应用程序需要专门为每个操作系统开发(甚至针对这些操作系统的不同版本),而混合应用程序至少需要开发本地“容器”托管网页语言。这里有一点解释:http://goo.gl/cw05Cs –

回答

2

仅供参考,现在我们可以写使用HTML,CSS和JS我们的移动应用(混合)。而且它包装在一个包装(安卓/ IOS),有时使用Phonegap

你的做法看起来不错,但让我们尝试另一种方法。你为什么不在你的代码库中设置一些标志,以帮助你确定你的应用程序是在webview中还是在浏览器中运行?

希望这会有所帮助。

+0

嘿,谢谢哥们,但我想知道我们有没有在api中有这样的东西。 – sij

+0

我还没有遇到过这样的事情,但我已经使用https://github.com/phonegap/phonegap-plugins从JavaScript访问手机的本地功能。 – codef0rmer

+0

嗨@sij,回想一下,当你制作一个混合应用程序时,加载到webview中的html文件具有'file:///'协议,而对于托管应用程序则是'http'或'https'。所以你可以检查'window.location.href.indexOf('http')=== 0? 'web':'hybrid'' – codef0rmer

0

我用这个片段,对我的作品

function isApp() { 

var app = document.URL.indexOf('http://') === -1 && document.URL.indexOf('https://') === -1; 
    if (app) { 
     // PhoneGap application 
     //alert("U're using cordova"); 
     return true; 
    } else { 
     //alert("U're using browser"); 
     return false; 
    } 
} 

希望它可以帮助你。问候。