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