如何检测用户是在移动设备上并提供应用程序

时间:2013-01-25 10:36:25

标签: php android ios mobile

我在MotoGP.com上看到,当我从移动设备或平板电脑上查看该网站时,我收到一条消息,说“你想看看我们的移动应用程序”消息,如果我下次再选择“否”我从同一设备访问该消息不再出现。我真的想在我的网站上介绍这样的功能,但我不确定这样做的好方法,我想到这样的事情:

  • 当用户访问网站时使用PHP查找设备(尝试检测操作系统,iOS 或Android(例如)
  • 查找用户的MAC地址
  • 从包含MAC地址和布尔标志的DB中的表中,检查 如果用户之前访问过,并表示不愿意看到 再次对话框。
  • 如果数据库中没有MAC地址,则显示消息
  • 如果MAC地址位于设置了标志的数据库中,请不要显示消息。

是否这是一个好方法的任何评论?这就是我从头开始想出的东西,而且搜索似乎什么也没有产生。

感谢您提出任何意见。

大卫

3 个答案:

答案 0 :(得分:1)

执行此操作的简便方法如下:

  1. 通过用户代理检测设备。请参阅How do I check if the useragent is an ipad or iphone?了解如何操作(欺骗性问题名称,此方法适用于任何设备/浏览器)。另外还有convenience class in PHP

  2. 如果用户拒绝,请设置Cookie,以便日后可以检查是否应再次显示提示。有关如何在Javascript中执行此操作,请参阅What is the "best" way to get and set a single cookie value using JavaScript

  3. 此和rdurand's idea的合并将为您创建适用于所有移动设备的最佳解决方案。智能横幅适用于运行iOS6及更高版本的设备,并提供干净整洁的方式来通知您的用户有适用于其平台的移动应用程序。如果设备运行iOS 5或更低版本,或者根本不是iOS,那么我所描述的上述方法也应该涵盖它们的基础。

答案 1 :(得分:1)

免责声明:这并没有回答记住用户选择的问题,但这会帮助您顺利通知用户(比侵入式弹出窗口更好)。如果你设法将它与@WDUK答案的第二点结合起来(我认为这比“接受答案”更合适),你可能会得到一些相当不错的东西。


查看Smart Banners

它并不能完全解决你的问题,而是一些问题。

如果用户未在其设备上安装该应用,则该横幅将与AppStore上的应用一起显示。如果安装了该应用,点击横幅将打开您的应用(如果用户来自智能横幅,您可以让您的应用做一些特别的事情。)

如果用户拒绝安装应用程序,它并不能解决您的问题“让人记住”,但它们确实“聪明”并且具有一些优势。

来自Apple's documentation

  

用户会相信点击横幅会   带他们到App Store而不是第三方广告。他们   我们将会欣赏横幅以不显眼的方式呈现在顶部   一个网页,而不是一个打断网络的全屏广告   含量即可。使用大而突出的关闭按钮,横幅很容易   供用户解雇。

     

如果应用已安装在用户的设备上,则为横幅广告   智能地改变它的动作,简单地点击横幅   打开应用。如果用户的设备上没有您的应用,则点按   在横幅上将他带到应用程序在App Store中的条目。什么时候   他回到你的网站,横幅上出现一个进度条,   表示下载需要多长时间才能完成。什么时候   应用程序完成下载后,“查看”按钮将变为“打开”   按钮,并点击横幅将打开应用程序,同时保留   来自您网站的用户上下文。

     

智能应用横幅自动确定是否支持该应用   在用户的设备上。如果加载横幅的设备没有   支持您的应用,或者您的应用在用户中不可用   位置,横幅将不会显示。

答案 2 :(得分:0)

我认为您可以使用移动侦测类。 这可能有用 - http://code.google.com/p/php-mobile-detect/