检测浏览器是否为移动推特应用程序浏览器



我的网站响应迅速,在iPhone上的Safari上看起来不错。但当我从iPhone上的推特应用程序浏览我的网站时,它似乎忽略了我的大部分手机造型,看起来很糟糕。我能做些什么来检测浏览器是否是某种移动应用程序(如Twitter),并使页面加载到默认的移动浏览器(Safari、browser等)中吗?

编辑:我严格使用CSS的最大宽度媒体查询,并针对HTML5块元素将宽度更改为百分比。在两个导航上,我根据需要更改了显示属性。

原来是缓存问题。它在Twitter应用程序中加载良好。奇怪的是,它以前没有,甚至在几次尝试之后也没有。

据我所知,你不能强迫网站在默认的移动浏览器中打开。是否在应用程序的UIWebView或默认Safari浏览器中打开您的网站,由Twitter应用程序单独决定。如果推特应用程序足够优雅,可以提供任何界面供你选择,这可能是可能的,但他们可能不会。大多数应用程序发行商都试图让用户尽可能长时间地留在应用程序内,而把他们扔到另一个应用程序外通常是不利于这一点的。

你最好的选择可能是尝试提高网站的响应能力,以便在Twitter应用程序UIWebView中也能工作(或在其他应用程序中)。例如,如果你的响应能力基于屏幕宽度(CSS max-width和朋友),我认为它也应该在Twitter应用程序UIWebView中工作。

你所描述的问题确实是一个非常严重和令人讨厌的问题。默认情况下,应用程序中的UIWebViews不会实现苹果的所有特殊处理程序(在原始Safari中工作)。应用程序制造商预计会手动实现这些功能,而99%的应用程序根本不会这样做。对于许多其他应用程序也是如此,谷歌原生搜索应用程序也会在UIWebView中打开URL,而网站在那里看起来也很糟糕。

你还应该考虑向Twitter提交一个错误,并敦促他们在应用程序中打开时提高网站兼容性。

您不能强迫用户从网站的浏览器打开链接。Android WebView受到限制,默认情况下不允许javascript和其他扩展。

您可以在这里找到更多信息:Android WebView VS手机浏览器

最新更新