知道打开网站的设备是android还是pc [重复]

Posted

技术标签:

【中文标题】知道打开网站的设备是android还是pc [重复]【英文标题】:Know if the device opening the site is android or pc [duplicate] 【发布时间】:2018-08-24 14:06:45 【问题描述】:

我有一个网站,并且我在共享主机中托管了该网站。问题是它在 PC 上看起来很棒,但在移动设备上看起来并不那么好。我知道我可以通过媒体查询使它看起来不错,但我想为用户提供全新的体验。当我在 PC 中打开它时,我在 Facebook 中看到过它,它运行良好,当我在移动设备(手机)中打开它时,它要求我为手机下载它。那么,它如何知道我的设备是 android 还是 ios 或 PC?我想在我的网站上做同样的事情。我有一个用Laravel 制作的网站,在我看来:

Route::get('/', 'PagesController@index');

在我的控制器中我想做的是:

<?php
  if(getDevice($device) === "android")
      return "mobile_view";
  else
    return "pc_view";
  
?>

那么,php or Laravel 中有一个函数可以做到这一点吗?

【问题讨论】:

还有很多关于这个的其他问题/答案。请做一些研究并尝试一下。如果您在实施其中一种解决方案时遇到困难,请随时发布一个问题,其中包括您尝试过的代码、预期结果、实际结果以及您已经完成的调试。 【参考方案1】:

检测操作系统/浏览器是一项非常复杂的任务,Laravel 没有内置的类/函数来执行此操作。然而,有一个 Laravel 包可以做到这一点。

https://github.com/hisorange/browser-detect

// Determine the user's device type is simple as this:
Browser::isMobile();
Browser::isTablet();
Browser::isDesktop();

if(Browser::isMobile())
    return "mobile_view";
else
    return "pc_view";

如果您想从用户代理获取浏览器详细信息,则当前用户调用解析函数。

$result = Browser::parse('Opera/9.80 (Windows NT 6.0) Presto/2.12.388 Version/12.14');

【讨论】:

以上是关于知道打开网站的设备是android还是pc [重复]的主要内容,如果未能解决你的问题,请参考以下文章

js如何判断用户使用的设备类型及平台

请问电脑PC自带IE浏览器和 苹果IPHONE或者安卓手机打开同一域名网站时,分别显示不同内容,代码如何修改,

如何知道网站上的设备是啥?

检测设备是iOS还是Android,然后重定向

js判断当前页面在移动设备还是在PC端中打开

为android设置PC蓝牙服务器[重复]