ios - 检查客户端浏览器是否使用 rails 响应 URL

标签 ios ruby-on-rails ruby

我向我的 iOS 客户发送包含我们应用程序链接的电子邮件。当他们点击链接时,我想检查他们是否安装了该应用程序。

如果应用程序已安装,我想打开它。如果没有,它将重定向到 App Store 中下载该应用程序。

我用来打开应用程序的 URL 是:

rva://store?uuid=EFBBD9FF-3976-4816-8B77-C1462C99E256

我使用的支票是:

def responds_to_url?(url)
  response = Net::HTTP.get_response(URI(url)).code
  if response == "200"
    return true
  else
    false
  end
end

问题是将我上面的 URL 传递给 URI() 会返回一个通用(大写 G)URI 对象,而它应该(如果它是 http)返回一个 HTTP 对象。

如何仅使用链接(即没有 JavaScript)进行类似的检查?

我考虑过将 URL 传递给 Mobile Safari 并查看它是否响应,但我不知道该怎么做,也不知道是否可行。

最佳答案

您可以使用 HTTP_USER_AGENT 进行客户端浏览器检测,我相信有一个 gem 可以做到这一点:Rails Browser Detection Methods

关于ios - 检查客户端浏览器是否使用 rails 响应 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20653190/

相关文章:

ios - UICollectionView 上的手势识别器未接收到手势

css - Rails 字体未在移动设备上加载但显示在桌面上

ruby-on-rails - before_filter 语法当你想要 "except" Controller "abc"

python - 如何创建一个元组,其中每个成员都通过表达式进行比较?

ios - 按字典中键的值对字典的 NSArray 进行排序

iphone - 当应用程序在 ios 中崩溃时,它会在任何地方创建核心转储吗?

ios - 共享扩展以打开包含的应用程序

ruby-on-rails - 在 ruby​​ 中反转 hash.sort_by

ruby - net-ssh 和远程环境

ruby-on-rails - UserSession 真实性 token 正在不同用户之间共享