| Index: pkg/telemetry/README.md
|
| diff --git a/pkg/telemetry/README.md b/pkg/telemetry/README.md
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..e01b1b6fba050fa88fb613cc1ac352bd5d70f558
|
| --- /dev/null
|
| +++ b/pkg/telemetry/README.md
|
| @@ -0,0 +1,51 @@
|
| +# telemetry
|
| +
|
| +A library to facilitate reporting analytics and crash reports.
|
| +
|
| +## Analytics
|
| +
|
| +This library is designed to allow all Dart SDK tools to easily send analytics
|
| +information and crash reports. The tools share a common setting to configure
|
| +sending analytics data. To use this library for a specific tool:
|
| +
|
| +```
|
| +import 'package:telemtry/telemtry.dart';
|
| +import 'package:usage/usage.dart';
|
| +
|
| +main() async {
|
| + final String myAppTrackingID = ...;
|
| + final String myAppName = ...;
|
| +
|
| + Analytics analytics = createAnalyticsInstance(myAppTrackingID, myAppName);
|
| + ...
|
| + analytics.sendScreenView('home');
|
| + ...
|
| + await analytics.waitForLastPing();
|
| +}
|
| +```
|
| +
|
| +The analytics object reads from the correct user configuration file
|
| +automatically without any additional configuration. Analytics will not be sent
|
| +if the user has opted-out.
|
| +
|
| +## Crash reporting
|
| +
|
| +To use the crash reporting functionality, import `crash_reporting.dart`, and
|
| +create a new `CrashReportSender` instance:
|
| +
|
| +```dart
|
| +import 'package:telemtry/crash_reporting.dart';
|
| +
|
| +main() {
|
| + Analytics analytics = ...;
|
| + CrashReportSender sender = new CrashReportSender(analytics);
|
| + try {
|
| + ...
|
| + } catch (e, st) {
|
| + sender.sendReport(e, st);
|
| + }
|
| +}
|
| +```
|
| +
|
| +Crash reports will only be sent if the cooresponding [Analytics] object is
|
| +configured to send analytics.
|
|
|