Configuration

Launching with options

Bugsee behavior is very customizable, if default configuration is not satisfying your needs you can launch the SDK with additional parameters. You'll need to create partial class BugseeLauncher within namespace BugseePlugin in a separate file. Use instance of IOSLaunchOptions or AndroidLaunchOptions for corresponding platform to change Bugsee behavior.

namespace BugseePlugin
{
    public partial class BugseeLauncher
    {
        static BugseeLauncher()
        {
            AndroidOptionsHandler = GetAndroidOptions;
            IosOptionsHandler = GetIosOptions;
        }

        private static AndroidLaunchOptions GetAndroidOptions()
        {
            return new AndroidLaunchOptions()
            {
                // Set custom Android launch options here.
                VideoEnabled = false
            };
        }

        private static IOSLaunchOptions GetIosOptions()
        {
            return new IOSLaunchOptions()
            {
                // Set custom iOS launch options here. 
                MonitorNetwork = false
            };
        }
    }
}

Stopping

Stopping will fully stop the SDK operation and clean up all the used resources. The operation may take a while to complete.

    Bugsee.Stop();
}

Relaunching

Stopping will fully stop the SDK operation and clean up all the used resources. Upon completion it will relaunch it again with new options.

  BugseeLaunchOptions options = ...;
  Bugsee.Relaunch(options);

Available Options

For iOS

Key Default Notes
CaptureLogs true Automatically capture all console logs
CrashReport true Catch and report application crashes (*)
DefaultBugPriority Low Default priority for bugs
DefaultCrashPriority Blocker Default priority for crashes
KillDetection false Detect abnormal termination (experimental, read more)
MaxRecordingTime 60 Maximum recording duration
MonitorNetwork true Capture network traffic
ReportPrioritySelector false Allow user to modify priority when reporting manual
ScreenshotToReport true Screenshot key to trigger report
ShakeToReport false Shake gesture to trigger report
Style Default Enumeration of Default, Dark and BasedOnStatusBar
VideoEnabled true Enable video recording
FrameRate High Specifies how often frames are captured
ScreenshotEnabled true Attach screenshot to a report. Note, that if VideoEnabled option is false, default value of this option is false too.
WifiOnlyUpload false Upload reports only when a device is connected to a WiFi network
MaxDataSize 50 Bugsee will avoid using more disk space than specified (in MB). If total Bugsee data size exceeds specified value, oldest recordings (even not sent) will be removed. Value should not be smaller than 10
VideoScale 1.0 Additional down scaling applied to recorded video, (e.g., 0.5 would reduce both width and height by half).
CaptureDeviceAndNetworkNames true Capture device name, wifi SSID and mobile carrier name.
* iOS allows only one crash detector to be active at a time, if you insist on using an alternative solution for handling crashes, you might want to use this option and disable Bugsee from taking over.

For Android

Key Default Notes
CaptureLogs true Automatically capture all console logs
CrashReport true Catch and report application crashes
DefaultBugPriority VeryLow Default priority for bugs
DefaultCrashPriority Blocker Default priority for crashes
ExtendedVideoMode false Enables or disables the use of MediaProjection API (**)
VideoMode V3 Screen capture mechanism. This option will replace ExtendedVideoMode in future releases. Note: default V3 mode is experimental and works only on Android API level 24 and higher. On lower API levels video mode is automatically switched to None. Video modes comparison is presented below in Android video modes comparison section.
FrameRate High Specifies how often frames are captured
LogLevel Verbose Minimal log level of Logcat messages, which will be attached to report
MaxDataSize 50 Maximum disk space consumed by Bugsee
MaxRecordingTime 60 Maximum recording duration
MonitorNetwork true Capture network traffic
ReportPrioritySelector false Allow user to modify priority when reporting manual
NotificationBarTrigger true Trigger report from notification bar
ScreenshotEnabled true Attach screenshot to a report. Note, that if VideoEnabled option is false, default value of this option is false too.
ServiceMode false Used, when Bugsee is launched from service. No video and no visual controls available. Recording continues even in background.
ShakeToTrigger false Shake gesture to trigger report
UseSdCard true Whether to store Bugsee data on SD card on in internal memory
VideoEnabled true Enable video recording
WifiOnlyUpload false Upload reports only when a device is connected to a WiFi network
VideoScale 1.0 Additional down scaling applied to recorded video, (e.g., 0.5 would reduce both width and height by half).
CaptureDeviceAndNetworkNames true Capture device name, wifi SSID and mobile carrier name.
** If ExtendedVideoMode is set to true, MediaProjection API is used, while recording video. In this case all types of views are recorded, but user is asked to allow video recording. If false (experimental), view drawing cache is used to capture the screen. In this case user is not asked to allow video recording, but frame rate is lower and some special views like status bar, soft keyboard and views, which contain Surface (MapView, VideoView, GlSurfaceView, etc.) are not recorded. Option has no effect, if VideoEnabled option is set to false.
Note: MediaProjection is known to conflict with Unity rendering, which can lead to a hung UnityPlayerActivity. That's why this option is *false* by default. It's not recommended to set this option to *true* in production build.
Android video modes comparison
Mode name Captures SurfaceView (GlSurfaceView, VideoView, MapView, etc.) Captures system views (keyboard, status bar, etc.) Requires user confirmation Minimal supported Android API level Works on Samsung devices
VideoMode.V1 - - - 21 +
VideoMode.V2 + + + 21 +
VideoMode.V3 + - - 24 -

Video mode is switched from VideoMode.V3 to VideoMode.V1 on Samsung devices automatically, because VideoMode.V3 usage on Samsung devices is known to lead to critical problems.