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

Php 如何检测用户是否在移动设备上并提供应用程序,php,android,ios,mobile,Php,Android,Ios,Mobile,我在MotoGP.com上看到,当我从移动设备或平板电脑上查看网站时,会收到一条消息,上面写着“您想查看我们的移动应用程序吗?”消息,如果我选择“否”,则下次从同一设备访问时,该消息将不再出现。我真的很想在我的网站上引入这样的功能,但我不确定有什么好方法可以做到这一点,我的想法如下: 当用户访问站点时使用PHP查找设备(尝试检测操作系统、iOS (例如Android或Android) 查找用户的MAC地址 从数据库中包含MAC地址和布尔标志的表中,检查 如果用户以前访问过,并且表示不希望看到

我在MotoGP.com上看到,当我从移动设备或平板电脑上查看网站时,会收到一条消息,上面写着“您想查看我们的移动应用程序吗?”消息,如果我选择“否”,则下次从同一设备访问时,该消息将不再出现。我真的很想在我的网站上引入这样的功能,但我不确定有什么好方法可以做到这一点,我的想法如下:

  • 当用户访问站点时使用PHP查找设备(尝试检测操作系统、iOS (例如Android或Android)
  • 查找用户的MAC地址
  • 从数据库中包含MAC地址和布尔标志的表中,检查 如果用户以前访问过,并且表示不希望看到 再次打开对话框
  • 如果MAC地址不在数据库中,则显示消息
  • 如果MAC地址在设置了标志的数据库中,则不显示消息
对这是否是一个好方法有何评论?这正是我白手起家的想法,搜索似乎一无所获

谢谢你的评论


David

实现这一点的简单方法如下:

  • 通过他们的用户代理检测他们的设备。请参见如何操作(欺骗性问题名称,此方法适用于任何设备/浏览器)。还提供了一个

  • 如果用户拒绝,请设置一个cookie,以便将来检查是否应再次显示提示。请参见有关如何在Javascript中执行此操作的说明


  • 这两者的结合将为您的所有移动设备创建最佳解决方案。智能横幅可用于运行iOS6及以上版本的设备,并提供整洁的方式通知用户其平台上有可用的移动应用程序。如果设备运行的是iOS 5或更低版本,或者根本不是iOS,那么我描述的上述方法也应该涵盖它们的基础。

    实现这一点的简单方法如下:

  • 通过他们的用户代理检测他们的设备。请参见如何操作(欺骗性问题名称,此方法适用于任何设备/浏览器)。还提供了一个

  • 如果用户拒绝,请设置一个cookie,以便将来检查是否应再次显示提示。请参见有关如何在Javascript中执行此操作的说明


  • 这两者的结合将为您的所有移动设备创建最佳解决方案。智能横幅可用于运行iOS6及以上版本的设备,并提供整洁的方式通知用户其平台上有可用的移动应用程序。如果设备运行的是iOS 5或更低版本,或者根本不是iOS,那么我所描述的上述方法也应该涵盖它们的基础。

    免责声明:这并不能解决记住用户选择的问题,但这将帮助您更好地通知用户(比插入式弹出窗口更好)。如果你能将它与@WDUK答案的第二点结合起来(我认为这是一个比这个更合适的“被接受的答案”),你可能会得到相当好的结果


    看一看

    这并不能完全解决你的问题,但可以解决其中的一部分

    如果用户的设备上没有安装应用程序,则会在AppStore上显示标题,其中包含alink to your app。如果安装了应用程序,单击横幅将打开你的应用程序(如果用户来自智能横幅,你可以让你的应用程序执行一些特殊操作)

    如果用户拒绝安装应用程序,这并不能解决你的标题“记住”的问题,但他们真的很“聪明”,并且有一些优势

    来自:

    用户会相信点击横幅会 将他们带到应用商店,而不是第三方广告。他们 将欣赏横幅以不显眼的方式呈现在页面顶部 网页,而不是中断网络的全屏广告 内容。并且有一个大而突出的关闭按钮,一个横幅是很容易的 供用户解雇

    如果应用程序已安装在用户设备上,则横幅 智能地改变它的动作,点击横幅只需 打开应用程序。如果用户的设备上没有您的应用程序,点击 在横幅上,他将进入应用商店中的应用入口。什么时候 他回到你的网站,一个进度条出现在横幅上, 指示下载需要多长时间才能完成。什么时候 应用程序完成下载后,“查看”按钮变为打开状态 按钮,点击横幅将打开应用程序,同时保留 您网站中的用户上下文

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


    免责声明:这并不能解决记住用户选择的问题,但这将有助于您更好地通知用户(比插入式弹出窗口更好)。如果你能将它与@WDUK答案的第二点结合起来(我认为这是一个比这个更合适的“被接受的答案”),你可能会得到相当好的结果


    看一看

    这并不能完全解决你的问题,但可以解决其中的一部分

    如果用户的设备上没有安装应用程序,则会在AppStore上显示标题,其中包含alink to your app。如果安装了应用程序,单击横幅将打开你的应用程序(如果用户来自智能横幅,你可以让你的应用程序执行一些特殊操作)

    如果用户拒绝安装应用程序,这并不能解决你的标题“记住”的问题,但他们真的很“聪明”,并且有一些优势

    来自:

    用户会相信点击横幅会 带他们去应用商店,而不是第三个标准杆