Detecting is fine, but its not flawless, and some people actaully resent being redirected without the option to select thier user experience. I agree with the title of your article.
For that reason, I recommend using a lo-fi solution which gives the user the option to select their experience. I think giveing users options is important and I would rather do that than maintain and constantly test my detection logic.
Simply provide links to "Mobile Version" and "Tablet Version" of the web site.
Then take it futher and have unique links for each OS so you would have:
"CHOOSE YOUR MOBILE EXPERIENCE: Android | Apple | Black Berry | Mobile Site
–Android give you an option to download an application for "Smartphone | Tablet"
–Applie gives option for "iPhone | iPad"
—Backberry gives a link to download a reader app
–The Mobile Site would be a version of the site sized for mobile
Something to consider is that all manufacturers provide Official user interface (UI) and user experience (UX) guidelines Many of the guidelines focus on native application development, but we can apply most parts of them to mobile web design too. The key is to try to provide the best possible experience on each platform. Do not deliver an iPhone experience to a BlackBerry user. Every platform has its own UI and usability guidelines that every user is expecting on your app.
I found one site that is following this logic: Wall Street Journal
There are other strategies of course, but this is a lowest common denominator.
Designers and developers often forget that the users themselves have a certain expectation based on the experiences of their own devices. User who have spent their time surfing on a 2 year old BlackBerry will not expect a keen viewing experience on many websites. Trying to detect and manage a market that changes as fast as the consumer device space is a Herculean task-it also does not help the web standards cause.
Well if anybody DOES decide to redirect a mobile browser/device, you can always use this: http://www.justindocanto.com/scripts/detect-a-user-on-a-mobile-browser-or-device
Justin, the whole point of this post is to demonstrate that a browser sniffer isn't a sustainable long-term solution. If someone reading this implements it, even if there are no missed browsers today, is the client willing to pay to have the developer go back and replace the code each time a new browser comes out? And what's the guarantee you'll even be maintaining it in a year or two so that developer can get a current browser sniffer?
Also, how does your script detect IE10 in metro mode versus desktop mode?
Hi. I just came across this searching for topic related to the business I'm working with.
We have made an automated targeting platform that automatically redirects users to different locations based on what device type and OS they use, there location (currently country, region and city in the works) and more.
This solved the problem of having to use multiple URL's or QR Codes for different devices or platforms. It's requiring no technical knowledge or integration – and we keep the detection up to date. Give it a try at http://www.splitterhq.com
Any feedback on the service from professionals like you would be very much appreciadet.
Morten L. Jørgensen
Morten, I feel like you're trying to solve a different problem. Your site doesn't seem to do anything different based on my device.
How often do you update the list of user agents? How are you handling for the IE10 user agent between two different surfing modes (desktop and Metro)? Do you provide screen resolution and viewport information as part of this service?
What about using a web service like Device Atlas?
Yes it costs, but totally negates the problem of user-agent updates and claims to be 99% accurate.
That's a good question. I don't know DeviceAtlas, but I did take a quick look at their information for a Microsoft Surface – Windows 8 Pro, an example of one that is confounding authors since it doesn't indicate in the DOM or UA which mode it is in. That page shows that perhaps 75% of the data is missing for that one device, in my opinion negating any 99% accuracy claim. So, in short, no I would not use it.
Developers may also want to consider WURFL (http://wurfl.io) for an easy way to have great device detection and form factor detection.
Which version, the opensource (wurfl.js) one or the licensed (WURFL, which I understand is about $1,500/yr)?
Now the question I keep asking but nobody pimping a library seems willing or able to answer, can it tell me when a user with IE10 or greater is visiting in desktop or "metro" mode?
Is it possible to do something like:
If mobile device and screensize above 600 on the short side
then force device in landscape mode and display and fit to screen.
And how would I go about it?
Media queries will “detect” the screen size for you. Knowing whether or not it’s a “mobile” device? See my post above. As for forcing the device into landscape mode from a browser, I hope that is not possible (I am not aware of an API for that). Finally, use media queries to adapt the layout to the screen.