| // Copyright (c) 2023, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| /// URL endpoint for sending Google Analytics Events |
| const String kAnalyticsUrl = 'https://www.google-analytics.com/mp/collect'; |
| |
| /// Name for the text file that will contain the user's randomly generated |
| /// client id |
| const String kClientIdFileName = 'CLIENT_ID'; |
| |
| /// Name for the file where telemetry status and tools data will be stored |
| const String kConfigFileName = 'dash-analytics.config'; |
| |
| /// The string that will provide the boilerplate for the configuration file |
| /// stored on the user's machine |
| const String kConfigString = ''' |
| # INTRODUCTION |
| # |
| # This is the Flutter and Dart telemetry reporting |
| # configuration file. |
| # |
| # Lines starting with a #" are documentation that |
| # the tools maintain automatically. |
| # |
| # All other lines are configuration lines. They have |
| # the form "name=value". If multiple lines contain |
| # the same configuration name with different values, |
| # the parser will default to a conservative value. |
| |
| # DISABLING TELEMETRY REPORTING |
| # |
| # To disable telemetry reporting, set "reporting" to |
| # the value "0" and to enable, set to "1": |
| reporting=1 |
| |
| # NOTIFICATIONS |
| # |
| # Each tool records when it last informed the user about |
| # analytics reporting and the privacy policy. |
| # |
| # The following tools have so far read this file: |
| # |
| # dart-tools (Dart CLI developer tool) |
| # devtools (DevTools debugging and performance tools) |
| # flutter-tools (Flutter CLI developer tool) |
| # |
| # For each one, the file may contain a configuration line |
| # where the name is the code in the list above, e.g. "dart-tool", |
| # and the value is a date in the form YYYY-MM-DD, a comma, and |
| # a number representing the version of the message that was |
| # displayed.'''; |
| |
| /// Name of the directory where all of the files necessary for this package |
| /// will be located |
| const String kDartToolDirectoryName = '.dart'; |
| |
| /// The API secret associated with the GA4 instance's Measurement Protocol |
| const String kGoogleAnalyticsApiSecret = 'Ka1jc8tZSzWc_GXMWHfPHA'; |
| |
| /// The measurement ID related to the GA4 instance |
| /// |
| /// Serves as an identifier for a web data stream |
| const String kGoogleAnalyticsMeasurementId = 'G-04BXPVBCWJ'; |
| |
| /// How many data records to store in the log file |
| const int kLogFileLength = 2500; |
| |
| /// Filename for the log file to persist sent events on user's machine |
| const String kLogFileName = 'dash-analytics.log'; |
| |
| /// The current version of the package, should be in line with pubspec version. |
| const String kPackageVersion = '0.1.2'; |
| |
| /// The minimum length for a session |
| const int kSessionDurationMinutes = 30; |
| |
| /// Name for the json file where the session details will be stored |
| const String kSessionFileName = 'dash-analytics-session.json'; |
| |
| /// The message that should be shown to the user |
| const String kToolsMessage = ''' |
| Flutter and Dart related tooling uses Google Analytics to report usage and |
| diagnostic data along with package dependencies, and crash reporting to |
| send basic crash reports. This data is used to help improve the Dart |
| platform, Flutter framework, and related tools. |
| |
| Telemetry is not sent on the very first run, but will be sent |
| on subsequent runs if not disabled explicitly. |
| |
| To disable reporting of telemetry, run this terminal command: |
| |
| flutter config --no-analytics |
| OR |
| dart --disable-analytics |
| |
| To enable reporting of telemetry, run this terminal command: |
| |
| flutter config --analytics |
| OR |
| dart --enable-analytics |
| |
| You can use either the flutter or dart command if both are installed, |
| they will set the telemetry status for both tools and any other |
| related tooling. |
| |
| If you opt out of telemetry, an opt-out event will be sent, and then no further |
| information will be sent. This data is collected in accordance with the |
| Google Privacy Policy (https://policies.google.com/privacy). |
| '''; |
| |
| /// The version number for the message below |
| /// |
| /// If the message below is altered, the version should be incremented so that |
| /// users can be prompted with the updated messaging |
| const int kToolsMessageVersion = 1; |