The University of Iowa has primarily focused on making web pages mobile friendly, but recently has also started creating mobile apps for the App Store and Android Market. Below are three strategies used on campus for engaging mobile users.
Making Mobile Friendly Websites
With recently developments in both CSS standards and browsers, for many sites the easiest way to make your site mobile friendly will be using a strategy called CSS Media Queries. This will allow your site to adapt to different browser sizes and shift the layout of the content to meet the size of display.
The following are some resources if you are interested in more information about CSS Media Queries.
- Responsive Web Design - A List Apart
- Responsive Web Design: What It Is and How To Use It - Smashing Magazine
- Responsive Web Design Book - A Book Apart
Here are a couple of examples of sites using CSS media queries. You can test this in a desktop browser such as Chrome or Firefox by resizing the browser and seeing how the content adjusts.
Making Mobile Specific Websites
If you are looking to target mobile devices as the primary viewer, then designing for mobile specific may make more sense. Many of the same toosl you use for standard web development will work, but may need to be tweaked for mobile devices. Many mobile vendors have suggestions on how to make web sites that work best on their devices.
Developing Mobile Apps
While web sites will provide your content the most exposure, there are times when a native application makes more sense. This may be for marketing and needing a presence in the various stores, or using device features such as the camera or accelerometer. There are two approaches to developing native applications.
The first would be developing in the tools and language for each device, i.e. Objective-C & XCode for iOS, Java & Eclipse for Android, etc. The advantage of this is that you can always use the latest and greatest features for the specific operating systems and your code will likely be more efficient. The main disadvantage of this is that you will need a developer or team of developers who is familiar with each language. Each platform does have a developer section of their site.
The second option for developing native applications is to use a framework that allows you to share code between different platforms. There are a number of frameworks that allow you to do this with various features. The advantage of these frameworks is that there is only one language to learn and develop in. The disadvantage is that the features supported in the frameworks is a subset of what is available in the full development kit.
If you have further questions or comments about this document, the mobile web site or applications, feel free to email mobile at uiowa dot edu.