How to upload symbols for UWP application
In order to symbolicate crashes for .NET UWP applications you need to upload symbol (*.pdb) files to HockeyApp. In this document we will describe the following steps required to perform this task:
- Download Store Symbols
- Build Side-Loading Symbols
- Upload Symbols to HockeyApp
- Verify Build ID of Symbols
If your app is already published in the store, you need to perform step # 1 Download Store Symbols. If your application is distributed though side-loading, you need to perform step # 2 Build Side-Loading Symbols. Once your symbols are available, you need to perform the latest step # 3 Upload Symbols to HockeyApp. We will describe the steps in detail below.
If your app is published to the store and you would like to symbolicate crashes from this app, perform the following steps:
- Go to https://dev.windows.com/overview
- In Your apps section select application for which you would like to upload symbols
- Select App management -> Current packages
- In Windows 10 packages Click Download Windows 10 symbol file for every platform (x64, x86, ARM)
If your app is distributed through side-loading and you would like to symbolicate crashes from this app deployment, perform the following steps:
You must do the following steps for each of the platform (x86, x64, ARM):
1. In Visual Studio select checkbox Compile with .NET Native tool chain
2. Build application
3. Copy *.pdb files from \bin[Platform]\Release\ilc\ folder
Once you have the symbols, you need to upload them to HockeyApp, and here is how you can do it:
1. Go to App dashboard https://rink.hockeyapp.net/manage/dashboard
2. Select an app for which you want to upload the symbols
3. Go to Versions tab
4. Select App Version for which you want to upload the symbols
5. If you want to upload symbols from side load apps, zip symbols you created on step 2 Build Side-Loading Symbols, otherwise use zip created on step 1 Download Store Symbols
6. Click Upload zipped or .pdb button
7. Select the zip files you created on step 5.
The most common reason that a crash is not symbolicated is because the corresponding build's symbol files were not uploaded.
In order to verify if you have the correct symbols
Check the id of the symbol files uploaded on the Files tab under Version
Check if this matches the Binary image's under crash's log
You have a symbolicated crashes when these match!