Privacy
To learn about Contentsquare privacy practices, see our Privacy Center and Privacy Policy.
Handling User Consent
Section titled Handling User ConsentContentsquare collects usage data on your app. By default, the SDK will consider every new user to be opted-out. To start tracking, the SDK Opt-in API must be called. You are responsible for handling the UI asking users for their consent and allowing them to manage their privacy settings. Use the Contentsquare SDK APIs to pass the user decision to the SDK.
Privacy APIs
Section titled Privacy APIsContentsquare provides APIs to manage the user consent.
Opt-in
Section titled Opt-inUse the Opt-in API to get user consent. Calling this API will generate a user ID and initiate tracking.
import com.contentsquare.android.Contentsquare
// To opt-in of CS TrackingContentsquare.optIn(context) // non-null Context
Opt-Out
Section titled Opt-OutWhen this API is called, tracking stops immediately, all settings are reset (Session number, Page number…) and all files and directory regarding to Contentsquare are deleted. This means that the user ID is deleted. The SDK will never track and collect any data from the user’s phone unless the Opt-in API is called again.
import com.contentsquare.android.Contentsquare
// To opt-out of CS TrackingContentsquare.optOut(context) // non-null Context
Get Contentsquare User ID
Section titled Get Contentsquare User IDUse this API to get the Contentsquare User ID. This can be used as to make a data request to Contentsquare as part of an end user request.
import com.contentsquare.android.Contentsquare
// Get CS User IDContentsquare.getUserId()
Stop / Resume Tracking
Section titled Stop / Resume TrackingUse stop and resume tracking APIs to completely exclude areas of the App from tracking.
When stop
is called, the SDK pauses all tracking (Analytics, Session Replay, Errors).
When resume
is called, the SDK resumes all tracking (Analytics, Session Replay, Errors).
import com.contentsquare.android.Contentsquare
// Stop trackingContentsquare.stopTracking()
// Resume trackingContentsquare.resumeTracking()
Stop gesture tracking
Section titled Stop gesture trackingGestures are tracked automatically. In specific cases, you might want to stop gesture tracking momentarily for some Activities. To do so, you can use our public API:
Contentsquare.doNotTrack(@NonNull Class<? extends Activity>... activitiesClasses) // will filter out the activities by their classes
In case you still need to track those activities but the automatic gesture tracking was not working we are offering you the possibility to do this manually by capturing and dispatching the GestureEvents through our Public API method:
class MainActivity : AppCompatActivity() {
..........
override fun dispatchTouchEvent(ev: MotionEvent): Boolean { Contentsquare.consumeEvent(ev) return super.dispatchTouchEvent(ev) }}
Forget me
Section titled Forget mePermanently breaking the link between the collected data and actual user.
This resets all settings and deletes all files and directories from the user’s device (User ID is deleted). If user is opted in, next time user starts the app, the SDK will re-start its collection mechanisms as if this was the first ever run for a new user, under a new user id. Configurations will be fetched from the server and application tracking will be on.
import com.contentsquare.android.Contentsquare
Contentsquare.forgetMe()
Disable user tracking across sessions
Section titled Disable user tracking across sessionsIf you don’t want to link the different sessions of a user to the same userID, you can follow these instructions to reset the userID at each app start:
-
Disable SDK auto-start
-
Implement the following:
class MyApplication : Application() {override fun onCreate() {super.onCreate()// Start Contentsquare SDKContentsquare.start(this)Contentsquare.optOut(this)Contentsquare.optIn(this)}}Starting the SDK manually using
start()
will ensure that opt-out is called right after the start of the SDK (no event tracked in between).Calling
optOut()
will delete the previous userID.Calling
optIn()
will set a new one.
Session Replay privacy APIs
Section titled Session Replay privacy APIsAs part of the Session Replay capabilities, Contentsquare provides masking and un-masking APIs to control how data is collected. See Session Replay Personal data masking for more information.
Play Store Privacy Guidelines Compliance
Section titled Play Store Privacy Guidelines ComplianceThe Contentsquare SDK is compliant with the Play Store Privacy guidelines.
User identifiers
Section titled User identifiersContentsquare User ID
Section titled Contentsquare User IDThe SDK generates a unique user ID (UUID) (random hash) which is specific to users on their device. Contentsquare cannot identify a user across devices. This user ID and all collected data are stored for 13 months. We don’t persist the UUID when the app is deleted and re-installed. The SDK generates a new UUID after install or re-install. Contentsquare does not share this user ID with any third parties.
”User identifier” feature
Section titled ”User identifier” featureContentsquare provides the ability to search for session(s) associated with a specific visitor, based on an identifier provided by the customer. See User identifier feature for more information.
Usage of App Set ID
Section titled Usage of App Set IDContentsquare does not use App Set ID.