我正在使用以下代码来检查用户是否在App中打开了该站点
$ua = strtolower($_SERVER['HTTP_USER_AGENT']); if(stripos($ua,'android') && stripos($ua,'mobile') !== false) { if($_SERVER['HTTP_X_REQUESTED_WITH'] == "apppackagename") { echo "opening with App"; } }
但这在某些设备上不起作用.
GT – S7582 Android Version 4.2.2
有没有解决方案可以在旧版本设备中使用?
提前致谢 !
您可以简单地包含在顶部
https://github.com/serbanghita/Mobile-Detect/blob/master/Mobile_Detect.php它是一个轻量级库,并且只需要包含一个文件.
原文链接:https://www.f2er.com/php/137099.html例如:
require_once('Mobile_Detect.PHP'); $device = new Mobile_Detect(); if ($device->isMobile() ) { if( isset($_SERVER['HTTP_X_REQUESTED_WITH']) && $_SERVER['HTTP_X_REQUESTED_WITH'] == "apppackagename") { echo "opening with App"; } }
如果你想检测android,那么你可以输入:
$device->isAndroidOS()
这是检测移动设备最可靠的方式(但也没有防弹).使用简单的用户代理检查无法进行可靠的移动检测.
如果您查看源https://raw.githubusercontent.com/serbanghita/Mobile-Detect/master/Mobile_Detect.php,您可以看到支持GT-S7582.