使网站iphone兼容

时间:2010-01-11 08:14:11

标签: iphone web mobile

客户要求我为iphone用户设置登录页面。 页面已经存在 - 非常简单,只有一些图像和文本。 我需要: - 确保它的iPhone兼容(任何特殊的标签或定义?) - 确保谷歌移动搜索将其编入索引为移动页面 - 如果我检测到正在通过iphone浏览,请在主页(不同页面,适用于所有用户)将iphone用户重定向到特殊登录页面。

我意识到我问了很多。任何帮助,例如您发现有用的教程的链接都将受到高度赞赏。

度过愉快的一天。

3 个答案:

答案 0 :(得分:1)

我写了关于developing for the iPhone的博客文章介绍。顶部简要介绍了基于Web的方法,您可能会发现它很有用。

Apples iPhone Dev Centre for Web Apps会为您提供有关您需要了解的更多详细信息。

答案 1 :(得分:1)

最好的办法是在应用程序控制器中设置一个检查iPhone Mime-Type的before_filter。转到config / initializers / mime_types.rb并添加此行

Mime::Type.register_alias "text/html", :iphone

这是在我的ApplicationController中的before过滤器中调用的方法。

def mobile_user_agent?
  agent = request.env['HTTP_USER_AGENT']
  return false if !agent
  return :iphone if agent[/(Mobile\/.+Safari)/]
  return :iemobile if agent[/IEMobile/]
  return :blackberry_4_3 if agent[/BlackBerry.*4.3.0/]
  return :blackberry_4_7 if agent[/BlackBerry.*4.7.0/]
  return :android if agent[/Android/]
  return false
end

然后在您的控制器中,您可以在控制器中执行以下操作。

def index
  @posts = Post.find(:all)
  respond_to do |format|
    format.html # index.html.erb
    format.xml  { render :xml => @posts }
    format.iphone # render index.html.iphone
  end
end

这使您可以渲染iPhone特定的视图。您可以为各种手机,Android,Blackberry,Windows Mobile等做同样的事情......

我不能完全相信这一点:) Mike Clark和实用程序员在Advanced Rails Recipes中展示了这样的解决方案。

我唯一的另一个建议是,如果你在你的应用程序中做了很多不同的iPhone东西,那么制作一个名为IPhoneViewController的独立控制器或处理所有iPhone内容的东西。

祝你好运!如果您需要任何其他信息,请告诉我,

肯特

答案 2 :(得分:0)

要将网站提交给Google进行移动搜索索引: http://www.google.com/support/webmasters/bin/answer.py?hl=en&answer=40348

了解您的网页或网站是否与iPhone兼容的最简单方法是尝试使用它。如果您没有iPhone,则iPod touch具有相同的Web浏览器。