0

我正在构建一个我想要的网络应用程序:

  • 在移动设备(例如 iPhone、Windows Mobile、Android 手机)上呈现时,使用这些设备的本机 UI 功能
  • 在 IE、Firefox、Opera 等非 Web 工具包浏览器(即桌面浏览器)上很好地呈现

到目前为止,我的研究使我开始使用以下技术:

  • 用于我的开发框架的 ASP.NET MVC 2(为每个目标设备编写不同的视图)
  • Sencha Touch(以前称为 ExtJS)用于在每个不同移动设备的浏览器中进行渲染
  • 用于区分请求设备/浏览器类型的 Microsoft Web 应用程序工具包

我对这 3 种技术中的任何一种都没有经验(我做过大量的 C# 服务器端、WinForms 和 ASP.NET 2 开发),所以我真的是根据我能够挖掘的信息做出这个决定在网上。

谁能想到这种技术组合不起作用的原因?我主要关心的是如何将 Sencha Touch 与 MS Web App Toolkit 一起嵌入到这个解决方案中。实际上,在这种情况下,它们是否甚至都是必要的。

非常感谢任何建议或反馈。

4

4 回答 4

1

从个人经验来说,您不必专门使用某些框架。我使用 asp.net 和简单的 JavaScript 来设计移动网站,并没有遇到很多问题。

如果您想针对广泛的设备并且不想打扰不同的视图前端,您需要确保您没有使用大量的 JavaScript,因为许多低端设备根本不支持 JavaScript。例如,jQuery 在 webkit 浏览器上运行良好,但在袖珍 ie 上却不行。

我没有任何使用 MS Web App Toolkit 的经验,但它看起来需要 JavaScript 支持,我怀疑它是否适用于许多手机。

如果您的主要目标是移动设备,但希望桌面浏览器访问您的网站,您可以更改 css 以使字体更大,以便在 PC 上看起来不错

我对移动设计的座右铭是让它尽可能简单。

于 2010-07-18T10:10:05.327 回答
1

我认为 ASP.NET MVC 和MobileWebApplicationToolkit是使用 asp.net 开发移动网站的最佳选择。

我认为WURFLmdbf更好(它用于 mobileWebAppToolKit),因为最后一个版本将在 8 月发布。

我不是移动网站中的 JS 专家,我尽量避免使用它以最大限度地提高兼容性。但是我觉得森达很大,200KB以上。也许您可以查看 xui-js 或其他特定的移动 js 框架。无论如何,我认为你的决定很好。

于 2010-07-21T13:19:52.490 回答
0

您好,感谢您的反馈。我不确定您对 MS Web App Toolkit 的理解是否正确 - 它是一个非常简单的组件,专为使用大量不同的移动设备(我相信 67 个)而设计: http://code.msdn .microsoft.com/WebAppToolkitMobile

我对它的理解很简单:

  • 使用内置的设备数据库确定发出请求的设备类型/浏览器

  • 提供在 ASP.NET MVC 2 代码中使用的组件,以便将请求路由到合适的视图以在调用设备上呈现

我打算包含 Sencha Touch 库,这样我就可以编写一个可以在多个不同移动设备上呈现的视图(为每个页面)。因此,当 Web App Toolkit 确定支持 Sencha Touch 的设备已发出请求时,该调用将路由到使用 Sencha Touch 库的适当视图。对于来自桌面浏览器的请求,调用将被路由到另一个视图,对于来自所有其他设备的请求,我可以再次使用另一个视图,或者如您所说,注入一个带有放大字体的简化样式表。

希望这是一个足够清楚的解释!

于 2010-07-19T03:32:15.237 回答
0

[Sencha 人] Sencha Touch 是一个应用程序框架,目前仅针对 Android 和 iOS 设备,并将在今年晚些时候/明年推出基于 webkit 的高质量浏览器时支持 RIM 和诺基亚设备,正如他们承诺的那样。

我们在 Touch 中没有渐进式增强/降级理念,因此没有后备行为。如果您绝对需要渐进式增强,您应该查看 jQTouch,它是一个 jQuery 插件。但即使是 jQTouch 也需要浏览器中具备健全的 javascript/CSS 功能,而许多现有手机根本不具备此功能。Cf,大多数普通网站在当前的 RIM 浏览器中都不能正确呈现。

因此,如果您想要 100% 的电话覆盖率,您将不得不将您的“应用程序”简化为即使是 HTML 功能有限的 WAP 电话也可以显示的东西。但到那个阶段,它不会成为一个应用程序。

于 2010-08-01T22:00:40.733 回答