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

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 rectangles

!Objective-C

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

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

// Remove all rectangles
[Bugsee removeAllSecureRects];

!Swift

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

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

// Remove all rectangles
Bugsee.removeAllSecureRects()

Obscuring contents

Sometimes application may contain too many elements with sensitive data. Marking all the views in such app as protected maybe quite overwhelming and time consuming. In these cases you can instruct Bugsee to obscure the whole screen by lowering resolution of the captured video. In this case, you won't be able to see the text on the screen, but you will be able to follow user navigation.

To achieve this, try setting BugseeVideoScaleKey to a value between 0.1 and 1.0.

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)