HockeyApp from Microsoft

The Latest on HockeySDK for UWP


Since the first Preseason release of our HockeySDK for UWP we’ve received great feedback and we’re happy to announce that HockeySDK for UWP apps on Windows 10 is available to all customers.

Why use the new HockeySDK

  • User Metrics: Understand user behavior to improve your app and track usage: daily active users, monthly active users, new users, and sessions.
  • Live Crash Reports: Get crash reports from your .NET Native app. For now, HockeyApp only supports unsymbolicated crash reports, but our goal is to provide fully symbolicated crash reports soon.

How to get started

How to integrate the SDK in your UWP app

If your app has been previously integrated with other HockeySDKs, make sure to uninstall them. Then, follow the three easy steps below:

  1. Add HockeySDK.UWP nuget package: In Visual Studio 2015, click Tools > Nuget Package Manager > Manage Nuget Packages for Solution. Navigate to Browse, search for “HockeySDK.UWP,” and click Install. Alternatively use the Package Manager Console by using the command: PM> Install-Package HockeySDK.UWP

  2. In the App.xaml.cs > App class constructor, add the following line using the App ID from the overview page of your app on the HockeyApp web app: Microsoft.HockeyApp.HockeyClient.Current.Configure("Your-App-ID");

  3. Make sure Internet(Client) capability is enabled in the package manifest

Everything is now set up and ready to use.

How to use the SDK

To distribute your build, create the app package and upload to HockeyApp. Invite testers to try out your app or distribute the download link. To install the app on Test devices, side-load these apps. Refer to this document for details on this step.

User Metrics come out of the box with the new HockeySDK for UWP. To see User Metrics on HockeyApp, make sure your app has at least one released version. You can either create a version manually from the web app, or a new version will be created when a build is uploaded or when a crash occurs in your app (provided you integrated the HockeySDK).

All crash reports are automatically being sent to HockeyApp from your app. Go to the web portal and see the live crashes for your app versions. Find more info on how to get the information about unhandled exceptions that crashed your app in the HockeyApp Knowledge Base.

Useful links

You may find the following links helpful:

If you have any questions, feedback, or suggestions, please send us a message via Twitter, our public Slack or support system.

HockeySDK 4.1.2 for iOS


We’ve just released version 4.1.2 of our HockeySDK for iOS. It contains a handful of improvements and bugfixes. Here’s the full list of changes:

  • [NEW] Feedback feature: New shouldDisplayUpdateAlertForUpdateManager-API #339 to make the moment of appearance for custom update UI even more customizable.
  • [IMPROVEMENT] Fix static analyzer warnings. #351
  • [IMPROVEMENT] Change internal structure the frameworks. #352
  • [IMPROVEMENT] Upgrade to PLCrashReporter 1.3.
  • [BUGFIX] Enable bitcode in all configurations #344
  • [BUGFIX] Fixed anonymisation of binary paths when running in the simulator #347
  • [BUGFIX] Rename configurations to not break Carthage integration #353

Make sure to upgrade HockeySDK-iOS to 4.1.2 and feel free to get in touch via Twitter, our public Slack or Support.

You can access the release here:


HockeySDK 4.1.0 for Xamarin


Hot on the tail of our iOS and Android SDK releases, we also release the stable version of our HockeySDK-Xamarin bringing Custom Events to every HockeyApp user. It includes the latest compatibility updates for iOS 10 (HockeySDK-iOS 4.1.1) and Android 7.0 (HockeySDK-Android 4.1.1).

iOS 10

The Xamarin SDK includes the AllFeatures variant of our iOS SDK - which means, that you will have to include a new Info.plist key as described in our iOS 10 SDK blog post - otherwise you risk an App Store rejection.

Custom Events

We’ve released Custom Events to all HockeyApp users recently, learn more about it in our public release blog post.

Here’s a short code snippet on how to use Custom Events in your Xamarin application, after you set up the SDK, you can create a Custom Event as follows:

using HockeyApp;
using System.Collections.Generic;

// Track a Custom Event
HockeyApp.MetricsManager.TrackEvent("Custom Event");

// Track a Custom Event with properties and measurements
  "Custom Event",
  new Dictionary<string, string> { { "property", "value" } },
  new Dictionary<string, double> { { "time", 1.0 } }

If you have any questions or suggestions, please open a thread in our support forum or chat with us on HockeyCamp - our public Slack channel.

You can access the release here:

Xamarin SDK

HockeySDK 4.1.1 for iOS and 4.1.0 for MacOS and tvOS


HockeySDK-iOS 4.1.1


We strongly suggest upgrading to version 4.1.1 of the SDK. If you are using our Feedback feature, upgrading to 4.1.1 requires additional steps on your side, though without upgrading the SDK you’re risking an App Store rejection.

We would have loved to give you a heads-up earlier, but we only learned of the possible rejection when Xcode 8 GM was released last week.

A bug on iOS 10 Simulator affects our testing our SDK there but doesn’t happen on device!

Feedback and iOS 10

Version 4.1.1 of the HockeySDK removes the Feedback feature from the default version of the SDK. The reason is that iOS 10 requires developers to add a usage string to their Info.plist in case they include the photos framework in their app. If this string is missing, the app will be rejected when submitting the app to the App Store. Since HockeyApp’s Feedback feature includes a dependency to the photos framework this means that if you include HockeyApp into your app, even developers who don’t use the Feedback feature are required to add the usage string. We don’t want to force this kind of dependency on you. Therefore, if you don’t use Feedback in your app, simply upgrade HockeySDK to version 4.1.1. If you are using Feedback, additional steps are required.

1. Use the new all-feature variant of the SDK

If you’re integrating the binary distribution directly, use HockeySDK.embeddedframework in the subfolder HockeySDKAllFeatures. If you’re using Cocoapods, use

pod "HockeySDK", :subspecs => ['AllFeaturesLib']

in your Podfile.

2. Add NSPhotoLibraryUsageDescription to your Info.plist

As of iOS 10, developers have to add Usage-Description-strings before using system frameworks with privacy implications. To learn more about this requirement, see this comprehensive writeup of this year’s WWDC Session on Privacy and have a look at how to localize Info.plist values.

Add a (localized) usage description string for the key NSPhotoLibraryUsageDescription to your Info.plist. Unfortunately, this process can’t be automated or done within our SDK, so you have to add the string manually.

We suggest the following text: To attach a photo to your feedback, we need access to your Photo Library.

HockeySDK-iOS and iOS 10 simulators

There appears to be an issue with the latest iOS 10 simulators (up to Xcode 8 Gold Master at the time of this writing) that makes it impossible to write values to the keychain. This affects previous versions of the SDK and results in an InternalInconsistencyException while HockeySDK-iOS 4.1.1 fails silently. This issue does not affect real devices and simulators for previous iOS versions. We have filed a radar with Apple and are hoping to get this issue resolved shortly, but you may encounter errors when testing HockeySDK in the simulator. As a workaround, we recommend testing HockeySDK on a physical device running iOS 10. If you do not have access to a real device, you can also try enabling Keychain Sharing in the Capabilities section of your app, as described in this StackOverflow post.

HockeySDK-Mac 4.1.0 and HockeySDK-tvOS 4.1.0

The latest update to our MacOS and tvOS SDK adds support for Custom Events and you can use it the same way as on iOS. To learn more about Custom Events, please read last week’s blog post about Custom Events for Everybody. Additionally we added some bug fixes, so please check out the release notes for HockeySDK-Mac and HockeySDK-tvOS.

Here is a short code snippet on how to use it in your MacOS application:


BITMetricsManager *metricsManager = [BITHockeyManager sharedHockeyManager].metricsManager;
[metricsManager trackEventWithName:eventName];


let metricsManager = BITHockeyManager.sharedHockeyManager().metricsManager

If you have any questions or suggestions, please open a thread in our support forum or chat with us on HockeyCamp - our public Slack channel.

You can access the releases here:




HockeySDK 4.1.0 for iOS and 4.1.1 for Android


In this new release for iOS and Android SDK, we are rolling out the Custom Events feature from our Preseason program to all customers, and are adding additional APIs to track an event with properties and measurements.

You can use Custom Events in your app to understand user actions and see the aggregates on the HockeyApp dashboard. When tracking events with properties and measurements, the data will be available in Application Insights portal. See this article for more information: Custom Events Available for Everybody

Here’s how to use Custom Events for iOS and Android:


BITMetricsManager *metricsManager = [BITHockeyManager sharedHockeyManager].metricsManager;
[metricsManager trackEventWithName:@"My custom event name"];


let metricsManager = BITHockeyManager.sharedHockeyManager().metricsManager
metricsManager.trackEventWithName("My custom event name")


MetricsManager.trackEvent("My custom event name");

If you have any question or suggestion, please open a thread in our support forum or chat with us on our Slack channel - HockeyCamp.

You can access the release here:



We have added support for Android 7.0 Nougat in this version of Android SDK.