我想使用 asp.net 3.5 开发一个可以在 iPhone 上查看的移动 Web 应用程序,但 VS2008 中不再有模板来启用移动开发。这可以做到吗?
3 回答
iphone 使用您网站的“常规”版本,因此开发“移动”版本将无法完成您正在寻找的内容。如果您检测到移动 Safari,您应该检查浏览器标题并将人们重定向到您网站的 iPhone 版本。
另一种选择(如果您使用 MVC)是让您的控制器检测浏览器并在它捕获移动 safari 时显示不同的视图。这样您就不需要重复的站点,只需要两组视图。
iPhone(至少是我的 3G 版本)完全支持带有 Ajax 和一切的“普通”网络应用程序。因此,大多数 Ajax 库都会与 iPhone 100% 兼容,至少只要 Ajax 库专注于开放标准等......
[Shameless-Plug 我与 Ra-Ajax 合作]
Ra-Ajax对 iPhone 有 100% 的支持,除了“拖放”会干扰 iPhone 上的滚动。这意味着您可以使用 Ra-Ajax(这是一个 LGPL 许可和免费的 ASP.NET 库)来创建一个“正常”的网站,它将 100% 完美运行(除了拖放,它用于例如Ra-Windows 等)在 iPhone 上...
即使是像我们的Ajax 日历示例这样真正“高级”的东西也可以在 iPhone 上完美运行 :)
Web 应用程序(通过 Asp.Net 3.5)可以通过 Internet 访问,并且可以通过 iPhone 的 Safari 浏览器访问。除非您想为 iPhone 和 Blackberries 等移动设备制作真正的 Web 应用程序,否则您不需要任何真正特别的东西。在这种情况下,您只关注设计方面,因为它仍然只是一个网站。由于移动浏览器功能的多样性,您需要进行一些研究以找出针对您想要访问的特定移动浏览器的推荐内容(英国广播公司的网站是移动渲染的一个很好的例子)。
最终,用户代理由您的系统评估,然后适当地呈现(或重定向)。如果您希望页面在 iPhone 上的呈现方式与网络上的任何其他浏览器不同,那么其他一切都是设计好的。
如果你能拿到 .Net 杂志(在美国又名 Practical Web Design)第 178 期的副本,这里有一篇很棒的文章,介绍了在进行移动开发时需要注意什么以及 iPhone 的浏览器是如何使用的与其他人不同。