I recently had to address a very simple sounding request that turned into a nightmare. The SharePoint 2010 mobile view is ugly and difficult to customize (as shown in the image below) and so I wanted a SharePoint 2010 list to redirect to a separate page if a mobile client was used to access it. I only had access at the site collection level. This seemed like a very easy thing to put in with a bit of JavaScript, and if that didn’t work, SharePoint had a built-in mobile redirect system that I assumed could be used. This blog post is being written to discuss how difficult it is to bypass SharePoint 2010’s mobile redirect system and to solicit feedback on other options to try.
The First Steps to Finding a Solution
First, I started with some JavaScript in a content editor. SharePoint’s built-in redirect loads before the main content loads, so the redirect was never hit. I moved it to the header, but had the same problem. I could not get my custom code in because SharePoint’s redirect catches the mobile device query and redirects before anything I added. So next, I tried customizing the SharePoint mobile page, but that is just a template that goes on top of the existing page content to render it differently. There is no way I could find to edit this to make the page appear like anything custom I would want it to. It pretty much looks like a listing of the lists on the page. And the style sheets are applied across the whole of the web application, so it cannot be customized at the individual page level.
Next, I tried disabling SharePoint’s redirect system, but this can only be enabled or disabled at the web application level and I was only a site collection admin. Some research shows this is a fairly common criticism of the 2010 redirect system with no real fix below the web application level.
Mobile Redirect Options
The only ways to disable the mobile redirect system in SharePoint 2010 are to:
1. Disable at the web application level. In my case, it was already disabled but still seemed to be on.
2. Edit the browser compatibility settings to change what a mobile device is defined as. This was well above my permission level and would have applied to the entire WFE.
3. Edit the web.config file. Also well above my permission level and would have applied to the entire WFE.
Since I could not get code into the page before the mobile redirect system kicks in, I could not disable the mobile redirect system, and I could not customize the mobile redirect page in a way that would make it look like the desired page, all of the ‘SharePoint based’ options seem ruled out. The only solution I could come up with was adding IIS redirects. I did not have permission at that level, and I don’t know if the redirects would have been overwriten during subsequent patches and updates, so I could not pursue it further.
It seems strange that there is no way to disable the mobile redirect system for an individual site or page, and I feel like I must be missing something, but from what I can tell, there’s no resonable way to do this without adding IIS resets in.
Have you been able to find a solution to the mobile redirect problem? Share your wisdom with us in a comment below. We’d love to hear your thoughts!
Now that you’ve read a little about the 2010 mobile redirect issue, read our other SharePoint tips and tricks. While you’re there, check out one of our most recent post about yourcacheHostInfo is Null.
Make yourself comfortable and check out our blog home page to explore other fixes we’ve solved in our day to day work. To make your life easier, subscribe to our blog to get instant updates sent straight to your inbox:
{{cta(‘33985992-7ced-4ebd-b7c8-4fcb88ae3da4’)}}