In this article we are going to see how to use the Map Updater Launcher task in your Windows Phone application development. To get some basics about maps please refer to my previous article on How to use Maps in Windows Phone application. Map Updater Task is a subset to the Map Downloader Task, with this task the end user are provided with the option to update the Map data that was downloaded using the MapDownloader task for offline usage. This task will launch the Maps application and check for any updates that can be downloaded to the local storage for offline viewing. Let us see the steps on how to achieve this task in our Windows Phone application development. Open Visual Studio 2012 IDE and create a new Windows Phone project with a valid project name as shown in the screen below. [more]
Clicking on OK will create the project and the solution with the list of default files and folders that are required to run the application. It will take some time to create these files based on your system configuration, so once everything is ready we can see the Visual Studio IDE with the project as shown in the screen below.
Let us add some controls to trigger the Map Updater task in the button click event, so add a button control alone to the application page as shown in the code below.
XAML Code:
[code:c#]<StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">
<TextBlock x:Name="ApplicationTitle" Text="F5debug How to Series" Style="{StaticResource PhoneTextNormalStyle}"/>
<TextBlock x:Name="PageTitle" Text="Map Updater" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}"/>
</StackPanel>
<!–ContentPanel – place additional content here–>
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<Button Content="Check for Map Updates" HorizontalAlignment="Left" Margin="30,10,0,0" VerticalAlignment="Top" RenderTransformOrigin="0.434,0.523" Width="416" Click="Button_Click" Height="138"/>
</Grid>
Now in the button click event create an instance of the MapDownloaderTask and call the show method which will list down the list of maps that required the updates as shown in the code below.
C# Code:
[code:c#]using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Navigation;
using Microsoft.Phone.Controls;
using Microsoft.Phone.Shell;
using F5debugHowto77.Resources;
using Microsoft.Phone.Tasks;
namespace F5debugHowto77
{
public partial class MainPage : PhoneApplicationPage
{
// Constructor
public MainPage()
{
InitializeComponent();
}
private void Button_Click(object sender, RoutedEventArgs e)
{
MapUpdaterTask mapUpdaterTask = new MapUpdaterTask();
mapUpdaterTask.Show();
}
}
}
Now we are done with the code, just run the application by pressing F5 directly from the keyboard or we can use the Build and execute the project option from the tool bar to run the application. Once the Build is successful we can see the Windows Phone emulator with the application and the expected outputs as shown in the screen below.