Hi, thank you for your long analysis. There is a point not easy to implement even if it technically can be done: build the list of mobile user agents looking back at the answer of the blog. The variety of mobile user agent is so wide the a look up in that list will be long, too long, this is why plugins use a regular expression.
I note another possible problem with some plugins: the switch to the desk top version. Does it works with a cache? How do you solve that problem?
Let me know, it’s an interesting discussion the will surely lead to an improvement of Hyper Cache.
Anyway the easy way to do that (and I wrote to the WordPress team) is to add a detector just before the cache. That “detector” should simply create a constant with inside the class of the device (for example desktop, tablet, phone… no more than 3 anyway).
This value should be used by any other plugin, even a cache which reacts to a request even before WordPress is actually loaded.
Uhm… I should introduce that on Hyper Cache and ask the “mobile” plugins to add an option to use that early detection.
Stefano.