Testing and debugging
HERE provides application providers with the tools needed to support their development. These features range from the Chrome Developer Tools to API calls for collecting raw data about an end-user’s machine.
Debugging your app
The Chrome DevTools is available for easy and efficient debugging. There are two ways to access these tools via your HERE Core app or platform:
Launch via Google Chrome browser
-
Launch the Google Chrome browser.
-
Enter the following URL: http://localhost:9090. You’ll see a list of the running web pages.
-
Select the page you’d like to debug.
Launch via your app
Set the contextMenu option to true in your app manifest file as follows:
"startup_app": {
…
"contextMenu": true
}
You can then right-click on your app and select Inspect Element to open the Chrome DevTools.
🚧 REMINDER
Remember to set
contextMenu: falseor remove the setting before deploying to your production environment.
Debugging a render or browser crash
Although rare, renderer or browser crashes may occur within your HERE Core environment. In case this happens, HERE has tools to provide application providers to collect the necessary information or logs to diagnose the cause. In our experience, the leading contributors to a renderer crash are application memory leaks or anti-virus software killing a process.
In the HERE Core environment, the renderer process is where application code runs.
Diagnostics mode
Diagnostics mode can recreate a runtime renderer or browser crash within your application and generate crash logs. The feature is opt-in. It can be configured in your application manifest or triggered from a command line.
Add --diagnostics as the value of the argument option in your application manifest, under the runtime object:
"runtime": {
"arguments": "--diagnostics"
},
When this setting is enabled, your users can re-launch your application and attempt to recreate the crash. When your application runs in diagnostics mode, the HERE Core Runtime supports the following:
-
Verbose logging defaults to enabled (
--v=1). -
Crash Reporting Tool is enabled.
-
--no-sandboxis enabled (required for Crash Reporter to properly work). -
Crash and debug logs are delivered on Runtime crash or application close.
If a renderer or browser process crashes with diagnostics enabled, a .dmp file is generated and stored on the end-user's file system. The HERE Core Runtime delivers this .dmp file and the debug.log file to the HERE CDN.
-
In Runtime versions 15.80.50.34 and earlier, the
.dmpfile is created in%temp%/OpenFin Crashes/FILENAME.dmp. -
In Runtime versions 16.83.50.9 and later, it is created in
C:\Users\USERNAME\AppData\Local\OpenFin\cache\RUNTIME_VERSION\Crashpad\reports, or, if a security realm is used, inC:\Users\USERNAME\AppData\Local\OpenFin\cache\SECURITY_REALM\RUNTIME_VERSION\Crashpad\reports.
Diagnostics can also be manually triggered by adding --diagnostics to the command line for the application's shortcut target.
C:\Users\USERNAME\AppData\Local\OpenFin\OpenFinRVM.exe --config="https://APP_SERVER.com/APP_MANIFEST.json" --runtime-arguments="--diagnostics"
❗️ DO NOT LEAVE ENABLED IN PRODUCTION ENVIRONMENT
If diagnostics mode is left enabled for an extending period of time, the files in the end-user's temp or cache folder will become extremely large and may affect performance. HERE recommends immediately removing the diagnostics flag after recreating the crash.