-
Notifications
You must be signed in to change notification settings - Fork 59
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ios detection broken? #77
Comments
Just running through a few iOS devices to see what they return:
(more coming soon) |
I made a spreadsheet of the results I found on the devices I can access with ios 14 & 13: https://docs.google.com/spreadsheets/d/e/2PACX-1vT3oRphnf0IzjKp-7npi6ig8PCgseGoUzMaAqaymPICY7OQrqPEZAt4wsqcMgpEKeKKLtiGAKZ7GQtJ/pubhtml I also included the information from the screen api as suggested by @Gusted to see if we could do something with that. |
Added a pull request which:
I would still like to figure out if this new |
Tried my mom's old ipad air, which is running ios 12.3 - it returned also found that the iphone 5s returns the same magic value |
Checked an iPhone 7 on 14.7.1 and it also is returning |
Also updated a 7th generation iPad to 14.7.1 and it is now also returning |
Instead of removing the hack, we can still use it to detect ios 14.x and eliminate devices which do not support it. Pushed some more commits:
|
Just came back from a vacation, and school is starting in ~2 weeks again. So I can take some looks but I won't be able to do make a big PR or anything like that. I had a quick look over the spreadsheet and must say that apple has done a fair job at obfuscating the relevant "detection property". Detecting the difference between iPad models will be a bit easier than between the iPhone models, the iPad models seems to have different screen size(and properly reported by the browser) which is a point that you can have them "separated" into smaller groups. Also the newest(?) iPad Pro seems to use a M1 chip which is a guarantee change in the float point precision which according to the spreadsheet seems to be true and the 2 using the M1 chip also report different screen sizes so those 2 can you already detect reliable. A solution for the iPads will to be have the float point precision + screen sizes which will give you ~50%+ of the way there. for the iPhones.... I always wondered why each iteration of the iPhone is such similair to the previous one, and this only just confirm it 😄. So this will need a tricky one, maybe something that can difference the behavior of apple's chips(as each iteration came with a more better etc etc apple chip) something closely related to some kind of precision, but good enough that it's notice-able between these iterations of models. Regards, |
Hey there!
Shouldn't it be treated as a good performance device? I am also getting the same with iPhone 12 (apple gpu) |
I was just testing with my iphone (xs / ios 14.6) and noticed it was returning the default tier..
Looking into things, I see the magic pixel number returned by
deobfuscateAppleGPU
is not801621810
or8016218135
. Instead it is returning80162181255
.It then defaults to the renderer that was passed in, causing it to find nothing since it is obfuscated. When
deobfuscateAppleGPU
fails to find a matching magic pixel, I think it should return all ipad / iphone chipsets.i.e. something like
The text was updated successfully, but these errors were encountered: