serbanghita / Mobile-Detect

Mobile_Detect is a lightweight PHP class for detecting mobile devices (including tablets). It uses the User-Agent string combined with specific HTTP headers to detect the mobile environment.
http://mobiledetect.net
MIT License
10.52k stars 2.67k forks source link

isMobile and IsTablet failing on ios devices - using safari #939

Open olli3 opened 12 months ago

olli3 commented 12 months ago

Issue description IOS devices using Safari - isTablet and isMobile both return false. Latest version (3.7.4) Same devices using Chrome work as expected.

same on IOS 16,15,14

ipad pro 12.9 and ipad10 are good example devices

User-Agent(s)

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.4 Safari/605.1.15

Device fix (obviously cant be done on all user devices everytime)

I opened Settings -> Safari -> Request Desktop Website -> All websites. That option is enabled by default. I disabled it and the proper User Agent is now displayed.

Suggestions

drakanor commented 10 months ago

I can confirm that the iPad is not recognized at all through Safari.

Mobile-Detect: 4.8.04

PHP: 8.1

iPad OS: 16.7.2

HTTP_USER_AGENT: "Mozilla\/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit\/605.1.15 (KHTML, like Gecko) Version\/16.6 Safari\/605.1.15"

Results: [2023-11-08 12:02:05] local.INFO: isIOS: false [2023-11-08 12:02:05] local.INFO: isiPad: false [2023-11-08 12:02:05] local.INFO: isiPadOS: false