打造移动友好型网站的最佳方法是什么?
完全以无技术的方式来讲,建立移动友好站点的最佳方法是什么?也就是说,我要创建一个可以在常规计算机上运行但还具有页面移动版本的网站。我应该重写每页吗?这些页面可能具有不同的功能,所以我应该重写后端代码吗?它应该是具有相同数据库的有效不同站点吗?
解决方案
大约一年前,我在操作站点上添加了移动表示层。基于该站点的体系结构(希望这对我们而言不是太依赖技术),我添加了一组新的JSP以适应移动浏览器(旁注:请参见http://wurfl.sourceforge.net/了解构建的一种很好的方法)移动页面,与浏览器类型无关)。另外,由于大多数移动浏览器的功能有限,某些后端功能也已更改。因此,简而言之,集成并不像人们期望的那样痛苦。
祝你好运!
这是一个相当广泛的问题,但这里有:
- 如果该站点主要是关于内容的,则意味着它不是我们使用的服务,而是我们所阅读的出版物,因此,我将尽量避免发布两个站点。专注于使用成熟的技术进行简单的演示,移动浏览器可以很好地处理这些技术。
- 如果本质上是通过网络交付的软件应用程序,那么事情会变得更加棘手,因为我们将要考虑移动设备的UI以及它与桌面的区别。
- 这应该不用说,但是无论哪种方式,如果我们有很多移动用户,那么在编写网站内容时都应牢记这一点。格式,长度,声音等
在我的网站上,我检测到用户代理,并且对于已知的移动浏览器,我提供了不同的样式表,其中一些较大/较少的必要项目保留在某些页面之外。后端并没有真正改变。
除了todd提到的WURFL / WALL功能系统外,还有可用的Java Server Faces库,这些库使用用于手机的备用WML渲染包。
我过去做过的一种方法是,确保我的数据在数据层中被很好地抽象,然后使用单独的中间层模型提取合适的数据。在我的情况下,该应用程序是天气应用程序,并且目标设备的显示方法确实受到限制,因此我们选择仅在网站功能齐全时向用户显示移动设备上的基本知识。那大概是十年前的WAP了。但是如今,随着设备的屏幕越来越大,带宽越来越好,我们可能希望使用不同的视图模型来使用和显示完全相同的数据。
我从未真正知道将来需要哪种类型的应用程序来使用数据。我们在跨平台上做很多应用程序,但是域模型很少改变。因此,最终我将尽可能使用相同的中间层对象,并在不同的客户端中提取该数据。一个很好的例子就是最近的一个项目,我们有一个丰富的Internet应用程序(小部件),一个完整的网站以及一个使用相同数据的Web服务。中间层中的数据抽象确实在这种环境下闪耀。
在非常高的抽象水平上,移动设备有两个主要警告:(1)屏幕很小,(2)网络连接是间歇性的。从根本上讲,这意味着我们需要呈现内容,以便即使在较小的屏幕(可变大小)上看起来也很好,并且最好使其也可缓存,以便用户可以在脱机时浏览内容。然后还有低带宽和高延迟的问题,但是如今这些问题已变得不那么重要了。
这是关于如何使网站具有移动性的非常全面的概述,尽管我希望可以公平地说,任何寻求移动性的人都会有不同的要求。如果我们有博客,则可以使用Mippin Mobilizer轻松将其设置为移动友好;它是免费的,提供品牌定制工具,并且已经有大量的受众群体浏览了各种动员的内容,因此有机会在博客周围产生广告收入。
这是因为Mippin动员过的博客随后成为内容,人员,新闻,博客,列表,内容,内容之间的所有连接以及更广泛的移动社区中的一部分
http://mippin.com(在移动浏览器上。)
请看一下动员工具,因为它展示了网站可以在一秒钟内完成的工作:
www.mippin.com/mobilizer
当然只有我们有博客...