Privacy and video

Disabling video

Video recording can be disabled completely using BugseeVideoEnabledKey launch option. See configuration for more info.

Protecting views

All system text boxes that are marked as secure are hidden from the recorded video automatically. In addition we support a way to mark your custom sensitive views so they will be treated similarly.

Marking view as protected in code

You can protect any view that you want by importing Bugsee.h header and implement the following code:

!Objective-C

    self.myView.bugseeProtectedView = YES;

!Swift

    self.myView.bugseeProtectedView = YES

Marking view as protected in storyboard

Story Board Protect View

  • Open storyboard or xib file with interface
  • Select view that you need to protect
  • Choose the Identity inspector tab on right panel(3rd tab)
  • Add a User Defined Runtime Attribute called bugseeProtectedView as shown in the picture.

Protected web page elements

You can also prevent any web page element, shown in WebView, from being recorded by adding class="bugsee-hide" to it.

<input type="text" class="bugsee-hide">

Elements with type="password" are not recorded by default. If you want such web page element to be recorded, add class="bugsee-show" to it.

<input type="password" class="bugsee-show">

Protecting by coordinates

Bugsee allows hiding screen area by absolute coordinates as well:

CGRect you make must be in points, with 0,0 coordinates in top left corner.

!Objective-C

    [Bugsee addSecureRect:CGRectMake(10, 10, 100, 100)];

!Swift

    Bugsee.addSecureRect(CGRect(x: 10, y: 10, width: 100, height: 100))

You need to be aware of the orientation that can be changed during application work. Recreate Rect after orientation change, if 'black box' on video does not cover all secure data that you need.

Other methods of secure Rects

!Objective-C

    // Remove rect
    [Bugsee removeSecureRect:CGRectMake(10, 10, 100, 100)];

    // Get all rects
    NSArray * rects = [Bugsee getAllSecureRects];
    for (NSValue * rectValue in rects){
        CGRect rect = [rectValue CGRectValue];
    }

    // Remove all rects
    [Bugsee removeAllSecureRects];

!Swift

    // Remove rect
    Bugsee.removeSecureRect(CGRect(x: 10, y: 10, width: 100, height: 100))

    // Get all rects
    let rects = Bugsee.getAllSecureRects();
    for rectValue in rects!{
        var rect = (rectValue as! NSValue).cgRectValue
    }

    // Remove all rects
    Bugsee.removeAllSecureRects()

Going dark

In some rare cases you might want to conceal the whole screen and stop recording events completely. The following APIs will come in handy, no data is being gathered between the calls to pause and resume.

!Objective-C

    // To stop video recording use
    [Bugsee pause];

    // And to continue
    [Bugsee resume];

!Swift

    // To stop video recording use   
    Bugsee.pause()

    // And to continue
    Bugsee.resume()

Hiding keyboard

In some cases you might want to prevent keyboard to be captured on video (as well as touches). You can use the following method to achieve the desired effect.

!Objective-C

    // To prevent keyboard from being captured
    [Bugsee hideKeyboard:true];

    // To let us capture keyboard again
    [Bugsee hideKeyboard:false];

!Swift

    // To prevent keyboard from being captured
    Bugsee.hideKeyboard(true)

    // To let us capture keyboard again
    Bugsee.hideKeyboard(false)