【问题标题】:How can I see if tel: is actually linked to a device that can make a call?如何查看 tel: 是否实际链接到可以拨打电话的设备?
【发布时间】:2012-07-11 21:52:57
【问题描述】:

我目前正在进行一个需要检测设备是否可以拨打电话的项目。根据是否可以,我需要切换视图并应用两个不同的功能,一个是使用 tel 拨打特定号码的按钮:在 html 上,另一个是您输入号码的按钮,我们会用fonality给你打电话。

目前,我已经设法安装了诸如 wurfl 或 terawurfl 之类的插件/库,似乎没有一个 100% 可靠的方法来检测手机或平板电脑/台式机是否可以拨打电话。

是否有任何服务器端或用户端解决方案可以解决此问题,例如我在 wurfl/terawurfl 中遗漏的标签,甚至是我可以进行的 javascript ajax 调用来检测“是的电话:有效”或类似性质的东西。

【问题讨论】:

  • 可能无法回答您的问题,但请看一下这个技巧:stackoverflow.com/questions/836777/…
  • 否; JavaScript 仅限于浏览器,它无法访问协议或相关的处理程序。您必须向您的用户提供选择('如果您有 Skype,或者这是一部电话,并且您想拨打电话,请单击“拨打此号码”链接,否则请单击“我们\”给你打电话”按钮。')。
  • 我真的认为你应该重新考虑你的方法。即使手机/平板电脑有有效的 SIM 卡并且在网络上,它也可能被运营商或用户禁止拨打电话(呼叫限制/呼叫限制);或者它可能无法拨打您的特定号码(没有服务,或国际呼叫受限等),除非您尝试拨打拨打您的号码,否则您将无法知道正在尝试到达。
  • 从未尝试过,但我最近读到了handsetdetection.com
  • 我不会担心限制或禁止,因为我们的目标用户在个人设备上,老实说,限制自己会很奇怪。

标签: php tel


【解决方案1】:

这是我使用的一个 PHP 类,它检测您可以免费下载的移动浏览器。 http://code.google.com/p/php-mobile-detect/

一旦类设置正确,您就可以使用如下代码:

if ($detect->isMobile()) {
    // any mobile platform
    // place telephone code here
}

或者你可以更具体:

if($detect->isiOS()){
    // code to run for the Apple iOS platform.
}

这通常用于创建移动网站,但它会适合您的目的:)

【讨论】:

  • 这个解决方案实际上是通过使用用户代理中的模式而不是拥有数据库来实现的......另外,您可以更改它并创建一个新类别。似乎是一个有用的插件,但让我意识到许多设备可能有一个电话号码,但不是用来打电话的......
  • 非常真实,移动技术非常出色,而且它只会越来越好。我很高兴这对您有用,它可以节省大量时间并自己构建它!我将其用于移动优化网站
猜你喜欢
  • 1970-01-01
  • 2014-11-10
  • 2013-06-25
  • 1970-01-01
  • 1970-01-01
  • 2010-10-28
  • 2013-04-16
  • 2015-07-15
  • 1970-01-01
相关资源
最近更新 更多