.NET Zone is brought to you in partnership with:

Sasha Goldshtein is a Senior Consultant for Sela Group, an Israeli company specializing in training, consulting and outsourcing to local and international customers.Sasha's work is divided across these three primary disciplines. He consults for clients on architecture, development, debugging and performance issues; he actively develops code using the latest bits of technology from Microsoft; and he conducts training classes on a variety of topics, from Windows Internals to .NET Performance. You can read more about Sasha's work and his latest ventures at his blog: http://blogs.microsoft.co.il/blogs/sasha. Sasha writes from Herzliya, Israel. Sasha is a DZone MVB and is not an employee of DZone and has posted 207 posts at DZone. You can read more from them at their website. View Full User Profile

Windows Azure Mobile Services "Rent a Home" Sample, Part 1: Introduction

  • submit to reddit

For my Visual Studio Live! talk on Windows Azure Mobile Services, I decided to go beyond the "todolist" quick start samples and implement an application that illustrates more framework-specific and platform-specific features. The application is called "Rent a Home", and helps users share apartments for rent and view apartments for rent on a map around their location. Although this is not a production quality application -- for one thing, there is no way to contact the apartment owner! -- it's a more realistic illustration of why you would want a shared backend for your mobile application on all four major mobile platforms: Android, iOS, Windows Phone, and Windows 8.

In this post, we'll look at the feature list and some screenshots from the four platforms. In Part 2 we'll look at the user interface implementation and how it is connected to the backing Mobile Service. We will also see how server-side scripts enrich the user experience by providing geocoding of user-specified apartment addresses. In Part 3 we will explore authentication support (with Twitter), and obtain the user's name from the Twitter API. Finally, in Part 4 we'll look at push notifications on the four platforms, and see what's necessary on the server side to send push notifications whenever a new apartment listing is added. You might want to follow along by looking at the code, which is available on GitHub.

The Rent a Home application has the following features on all four platforms:

  • Users can add an apartment listing by providing a street address and the number of bedrooms
  • Users can unpublish an apartment listing that they previously published
  • Users can view the apartment listings in a table or on a map
  • Users can sign in with Twitter to associate apartment listings with their identity
  • Users can receive push notifications whenever a new apartment listing is added

Android screenshots

iOS screenshots

Windows Phone screenshots

Windows 8 screenshot

In the next part, we'll look at the implementation of the application's UI on all platforms, and how server scripts enrich this implementation with location information for the maps to work properly.

I am posting short links and updates on Twitter as well as on this blog. You can follow me: @goldshtn
Published at DZone with permission of Sasha Goldshtein, author and DZone MVB. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)