Microsoft has released a number of updates to Windows Azure to make it easier for developers to build back ends to mobile client applications.
The new capabilities include mobile services such as custom API support, Git source control support, Node.js Node Packaged Modules (NPM) support and a new .NET API via NuGet. In addition, Microsoft is offering a free 20MB SQL database option for mobile services and Web sites, as well as Android push notification support.
“Windows Azure Mobile Services provides the ability to easily stand up a mobile backend that can be used to support your Windows 8, Windows Phone, iOS, Android and HTML5 client applications,” said Scott Guthrie, corporate vice president of the server and tools business at Microsoft, in a June 14 blog post.
Starting with the first preview, according to Guthrie, Microsoft supported the ability for developers to easily extend their data back-end logic with server-side scripting that executes as part of client-side CRUD operations against their cloud back data tables. However, with the new updates, Microsoft is extending this support even further and introducing the ability for developers to also create and expose custom APIs from their Mobile Services back end and easily publish them to their mobile clients without having to associate them with a data table.
“This capability enables a whole set of new scenarios—including the ability to work with data sources other than SQL Databases (for example: Table Services or MongoDB), broker calls to 3rd party APIs, integrate with Windows Azure Queues or Service Bus, work with custom non-JSON payloads (e.g. Windows Periodic Notifications), route client requests to services back on-premises (e.g. with the new Windows Azure BizTalk Services), or simply implement functionality that doesn’t correspond to a database operation,” Guthrie said in the post. “The custom APIs can be written in server-side JavaScript (using Node.js) and can use Node’s NPM packages. We will also be adding support for custom APIs written using .NET in the future as well.”
The new release enables custom APIs to be written using Node.js, and the custom API programming model follows the Node.js convention for modules, which is to export functions to handle HTTP requests.
“Integrating authentication and authorization with Custom APIs is really easy with Mobile Services,” Guthrie wrote. “Just like with data requests, custom API requests enjoy the same built-in authentication and authorization support of Mobile Services (including integration with Microsoft ID, Google, Facebook and Twitter authentication providers), and it also enables you to easily integrate your Custom API code with other Mobile Service capabilities like push notifications, logging, SQL, etc.”
Microsoft Windows Azure Updates for Mobile Backend Development Go Live
In addition, the new source control support in Mobile Services provides developers with a Git repository as part of their Mobile Service, and it includes all of their existing Mobile Service scripts and permissions.
The new Mobile Services source control support also allows developers to add any Node.js module they need in the scripts beyond the fixed set provided by Mobile Services. For example, developers can easily switch to use MongoDB instead of a Windows Azure table, Guthrie said. They can set up MongoDB by either purchasing a MongoLab subscription, which provides MongoDB as a Service, via the Windows Azure Store or set it up on their own on a virtual machine—either Windows or Linux, he added.
A few months ago, Microsoft announced a new prerelease version of the Mobile Services client SDK based on portable class libraries (PCL), according to Guthrie. Now that library is a stable .NET client SDK for mobile services and is no longer a prerelease package. The update includes full support for Windows Store, Windows Phone 7.x and .NET 4.5, which allows developers to use Mobile Services from ASP.NET or WPF applications.
Earlier this year, Microsoft introduced a new capability in Windows Azure for sending broadcast push notifications at high scale: Notification Hubs, Guthrie said.
In the initial preview of Notification Hubs, developers could use this support with both iOS and Windows devices. Since then, Microsoft has announced new Notification Hubs support for sending push notifications to Android devices as well.
“Push notifications are a vital component of mobile applications,” Guthrie said. “They are critical not only in consumer apps, where they are used to increase app engagement and usage, but also in enterprise apps where up-to-date information increases employee responsiveness to business events. You can use Notification Hubs to send push notifications to devices from any type of app—a Mobile Service, Web Site, Cloud Service or Virtual Machine.”
At its TechEd 2013 conference earlier this month in New Orleans, Microsoft introduced a series of new development and test capabilities for Windows Azure, as well as offers and rate reductions to make it easier for developers to use the Microsoft cloud.
“I think that this is really for a lot of people [who] aren’t really using the cloud today. This is going to be an unbeatable offer, where if you’re an MSDN customer or a Visual Studio .NET customer, you kind of can’t afford not to be using Windows Azure once this comes out,” Guthrie told eWEEK.