Windows Phone

Windows Phone 8 Samples Update

WpDevCenter

The Windows Phone Developer team has updated / added new samples to help developers making great applications for Windows Phone. Each sample contains enough information for you to start learning a new feature or just get a idea for a new application. Open your Visual Studio and start downloading the samples. Here is the list of the last updated samples:

Source of the article Windows Phone Developer Blog.
All the Windows Phone samples can be found at http://code.msdn.microsoft.com/wpapps.

Global Windows Azure Bootcamp – Mobile Services for Earthquakes

GWAB Mobile Services

Saturday April 27th, 2013 was the day of the Global Windows Azure Bootcamp (GWAB). With more than 90 locations all around the world, GWAB was THE world-wide event about Windows Azure. Thanks to @RobinDotNet I had the chance to give a 15 minute presentation on how I use Windows Azure Mobile Services in my application Earthquakes for Windows Phone. Today I’m going to share with you, on this blog, my presentation and at the same time, add some details and answer some questions I received after the talk.

Continue reading

Get up to $2,000 with your Windows 8 and Windows Phone apps

Keep The Cash

Once again, Microsoft is helping developers to create new application for Windows 8 and Windows Phone. Today, it’s all about ca$h. From March 8th to June 30th 2013, you can get $100 for each new application you publish on the Windows Store or Windows Phone Store, up to 10 per store. Yes, it means you can get up to $2,000 just for building applications, then you’ll make money selling those apps and maybe monetize them using ads. Read this interesting article about how to choose your business model.
Link to the Keep The Cash contest.

Have a look again at the 50 free templates for Windows 8 applications and start building new apps today!

Windows Phone Map control and ZoomLevel limits

ZoomLevel
The Oscars are over, I was playing with my application Earthquakes for Windows Phone and I noticed a bug in the map control. The problem is very simple, but I’d like to share it here with you Windows Phone developers so you don’t make the same mistake.
Like a lot of application that use the Map control, I have two buttons in the ApplicationBar that allow me to zoom in and zoom out.

ZoomLevelActions

So, when you use the Map control for Windows Phone 7 or Windows Phone 8, you can use the property ZoomLevel to zoom in or zoom out. On the click of the button I was simply increasing or decreasing the value without doing any control. I know that’s bad… Apparently, there is a limit for the zoom level that can be apply to the Map. Which is 1 to 19 for Windows Phone 7 and 1 to 20 for Windows Phone 8.

For Windows Phone 7 you can use the following code to change the ZoomLevel property:

private void BtZoomMore(object sender, EventArgs e)
{
   map.ZoomLevel = Math.Min(map.ZoomLevel + 1, 19);
}

private void BtZoomLess(object sender, EventArgs e)
{
   map.ZoomLevel = Math.Max(map.ZoomLevel - 1, 1);
}

And for Windows Phone 8:

private void BtZoomMore(object sender, EventArgs e)
{
   Map.ZoomLevel = Math.Min(Map.ZoomLevel + 1, 20);
}

private void BtZoomLess(object sender, EventArgs e)
{
   Map.ZoomLevel = Math.Max(Map.ZoomLevel - 1, 1);
}

Windows Phone SDK Update for 7.8 available

SDK Windows Phone 7.8

Windows Phone 7.8 begins to be shipped with new phones and the update for 7.5 devices should start been deployed “over the air” very soon. That is the consumer part. For the developer, the good news was published today by Microsoft, the Windows Phone SDK Update for 7.8 was released this morning. You will be able to use some of the new features of Windows Phone 8 in your application that target Windows Phone 7.5.

You can install this SDK on Windows 7 and Windows 8 and it will add two new Emulators: Windows Phone 7.8 512 MB emulator and Windows Phone 7.8 256MB emulator. You’ll still be able to test your apps on Windows Phone 7.1 (or 8.0) because this new SDK is installed on top of the previous installs. There is no new API provided with this SDK, only the two new emulators.

New capability

The main (if not only) new capability that you can take advantage of in your app is the new live tile option:

  • The primary tile supports now 3 different sizes (like for Windows Phone 8), small, medium and large.
  • The secondary tile can now use the 3 tile templates introduced for Windows Phone 8: Flip, Iconic and Cycle templates.

Download the Windows Phone SDKs

Windows Phone 7.8 Emulator

Introduction to Windows Azure Mobile Services

MobileServices

Today I would like to write about one of the feature on Windows Azure that was created by the team of Scott Guthrie. This new service, still tagged as a preview in the Azure management console, allows you to make easier your developments for Windows Phone, Windows 8 and even iPhone and Android devices with:

  • Structured storage. You can send and retrieve structured data between your client device and Azure using JSON messages or with the Windows Azure Mobile Services SDK. The backend of this storage is a SQL Server database but you don’t have to take care of it. Windows Store C#, Windows Phone 8, iOS.
  • User authentication. You will be able using a very simple line of code to get your mobile users to authenticate using for example their Microsoft Account or Facebook to access some restricted data or just to be identify by your system. Windows Store C#, Windows Phone 8, iOS.
  • Push notifications. Send a push notification to display a toast or change the tile on the client device has never been easier. With one line of JavaScript embedded on Azure, you can send push notification to all of your users. Windows Store C#, Windows Phone 8, iOS.

Microsoft did an amazing job by creating a lot of content to help developers creating applications using Windows Azure and I’ve linked, for each feature mentioned above, the corresponding tutorial for Windows 8 and Windows Phone 8 apps or even iOS.

Ok, now that we have the big picture of what is Windows Azure Mobile Services, let’s code a little bit. For one of my project I’m working on, I needed to connect Mobile Services, not from a mobile device but from a Worker Role also hosted on Azure. The main problem is that the Mobile Service SDK is not working for other projects than Windows 8, Windows Phone 8 (in the .NET world). Remember what I said about the Structured storage? You can exchange data using JSON messages. So I’ll use the REST APIs to communicate with my backend.

Continue reading

BugSense is back with the support of Windows 8, Windows Phone 8, HTML 5

BugSense

I already talked about BugSense, this company that provides to the developers of mobile apps the power to track crashes and problems in their applications (way better than the solution provided by the Microsoft marketplace). They are constantly evolving, adapting to the new market, the new technologies and today they announced the Windows 8 SDK for C# and JavaScript!

If you are familiar with NuGet, it has never been so easy to integrate a third-party library in your current project. Right click on you project, then Manage NuGet Packages…

image_20

Windows Phone 8 SDK is available

Windows Phone logo

Back from Microsoft BUILD in Redmond, WA, Microsoft released the newest version of its mobile operating system: Windows Phone 8. You can download the SDK right away: Windows Phone 8 SDK. In order to use (and abuse) of all new features of this OS, I recommend you to watch the videos of the BUILD sessions about Windows Phone 8 on Channel 9.

To run the emulator you’ll need those two requirements:

  • Windows 8 Pro edition or greater
  • A processor that supports Second Level Address Translation (SLAT) (which my computer doesn’t have because it seems too old, only two years old)

See what’s new in Windows Phone 8. I’ll publish some article soon about how to use the new features like the NFC.

How to detect a 256 MB Windows Phone 7 device

Windows Phone logo

Last Wednesday I talked about a very good article from Nokia on the Best practices for developing on Windows Phone 7 Tango (256 MB devices). Today I’m going to show you how to detect if your application runs on a 512 MB device or 256 MB. Because you probably can’t have the same features in your applications for a “classic” device than on a “low-cost” one, you must be able (without coding a specific version of your application) to detect the capabilities of the current device and adjust the features accordingly.

So here is the code you have to implement at the start of your application. You can store the result (the variable IsLowMemoryDevice) into the application settings in order to avoid to call this method every time.

private void DetectMemoryDevice()
{
    try
    {
        // Gets the application working set limit. (if available)
        long memorySize = (long)DeviceExtendedProperties.GetValue("ApplicationWorkingSetLimit");

        // If the application has more than 90 MB
        // it indicates a 512-MB device.
        IsLowMemoryDevice = memorySize < 94371840L; // == 90 MB
    }
    catch (ArgumentOutOfRangeException)
    {
        // Windows Phone OS update (7.1.1)
        // is not installed, which indicates a 512-MB device. 
        IsLowMemoryDevice = false;
    }
}

Then you can use the variable IsLowMemoryDevice to activate or deactivate the features in your application.