1// Copyright 2022 The Chromium Authors 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5syntax = "proto2"; 6 7option optimize_for = LITE_RUNTIME; 8option java_package = "org.chromium.components.metrics"; 9 10option java_outer_classname = "CustomTabSessionProtos"; 11 12package metrics; 13 14// Stores information about a Custom Tabs session. Custom Tabs are a Chrome on 15// Android feature that allow a Chrome tab to be launched as part of another 16// application. The launching app has the ability to close the Custom Tab. This 17// proto will let us detect apps that open a Custom Tab (loading a given URL 18// with the user's cookie jar) and then kill it without the user interacting. 19// Next tag: 7 20message CustomTabSessionProto { 21 // The time the recording was taken. Recorded as seconds since epoch. 22 optional int64 time_sec = 1; 23 24 // The package name of the app that launched the Custom Tab. 25 optional string package_name = 2; 26 27 // How long the Custom Tab was open for. It is recorded in seconds with a 10% 28 // fuzzing (real numbers will be fuzzed uniformity in the range of -10% to 10% 29 // before recording). It is capped at 300 seconds (exclusive). 30 optional int32 session_duration_sec = 3; 31 32 // Did the user interact with the page displayed by the Custom Tab? 33 optional bool did_user_interact = 4; 34 35 // True if the Custom Tab was closed through a user action (for example 36 // hitting the Close Button or the Android Back button). 37 optional bool was_user_closed = 5; 38 39 // Was the Custom Tab launched as a Partial Custom Tab 40 // (go/prd-partial-custom-tabs) 41 optional bool is_partial = 6; 42}