The Hockey App , which recently became part of the official services of
Microsoft , has long been known among developers as a tool for obtaining timely information on the behavior of mobile and desktop applications at the beta testing stage and in the application distribution mode in the store.
In the future, the HockeyApp toolkit will be integrated into the new SDK of the
Application Insights cloud service, which is currently focused on collecting data on operations, performance and the use of applications on various devices.
')
This reflects the company's plans to expand the functionality of
Visual Studio and the Application Insights service for iOS and Android developers.
At the moment, HockeyApp continues its work as an independent service. And in this article we will look at an example of using its mechanisms for a Windows Phone 8.1 application.
Using the functionality of
HockeyApp , the developer receives a huge number of tools to monitor the process of testing the application, as well as to analyze this data.
Detailed crash reports that include the name of the class, method, line number and exceptions that caused the application to crash. The developer is provided with analyzed and generated data on the amount of time spent by each of the testers, the type of device, as well as feedback from users on the basis of testing.

The universal scenario of using HockeyApp for any application consists of three steps:
- Register on the site HockeyApp ;
- Connecting the SDK system to the project and adding initialization strings to the application code;
- Downloading the application to the platform, or specifying a link to the location of the assembly, and sending invitations to users in the HockeyApp group for testing.
When an application completes a non-standard scenario, HockeyApp captures the moments of “departure” and saves all the necessary information.

The next time you start the application, it will start interacting with the user using the system dialog, which will ask if the user wants to send a report about the previous emergency shutdown of the application or not.
It is also possible for developers to configure the receipt of automatic crash-reports without notifying the user.
Using HockeyApp
After registering a developer account with
HockeyApp , we will add the necessary application to the system, specify the details and remember its App ID in the system:

Note that in the Namespace field, you must specify the actual namespace name from the application.

The version in the application description must match the version in the project manifest:

After setting the “External Build” parameter to “Enabled”, we are able to specify a link to the application assembly:

We integrate HockeySDK into the application project:
Nuget PM> Install-Package HockeySDK.WinRT
In the file App.xaml.cs we will connect the library:
using HockeyApp;
And in the application's constructor, add the following line indicating the App ID:
HockeyClient.Current.Configure("App_ID");
We send reports on "departures" of the application to the HockeyApp server
In the App.xaml.cs file, find the OnLaunched method and add the line to it:
await HockeyClient.Current.SendCrashesAsync();
To send reports automatically without receiving confirmation from the user, set the parameter to true:
await HockeyClient.Current.SendCrashesAsync(true);
checking for updates
Checking the availability of new versions of the application is available on the Windows Phone platform, which can be easily added using the code in the OnLaunched method of the App.xaml.cs file:
await HockeyClient.Current.CheckForAppUpdateAsync();
Obviously, the integration of HockeyApp mechanisms is a very simple process and does not require much effort from developers.
Additional features, such as authorization in the application using HockeyApp account, are available in the documentation
on the official service portal .
Conclusion
The
HockeyApp mechanisms
are very useful for application developers and provide benefits such as taking time to work with the application when using third-party testers, or monitoring and analyzing situations in which an unplanned termination of the application occurs.
useful links