eggnstone_flutter 0.2.1

  • Readme
  • Changelog
  • Installing
  • 72

eggnstone_flutter #

A collection of Flutter tools.

Getting Started #

This project is a starting point for a Dart package, a library module containing code that can be shared easily across multiple Flutter or Dart projects.

For help getting started with Flutter, view our online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.

[0.0.1-pre1] - 20.03.2020 #

  • Added LoggerService.

[0.0.1-pre2] - 24.03.2020 #

  • Removed ILoggerService (YAGNI).

[0.0.1] - 24.03.2020 #

  • Added AnalyticsService.

[0.0.2] - 24.03.2020 #

  • Added AnalyticsNavigatorObserver.

[0.0.3] - 24.03.2020 #

  • Added DartTools and CrashlyticsService.

[0.0.4] - 24.03.2020 #

  • Cleanup.

[0.0.5] - 24.03.2020 #

  • Using firebase_crashlytics instead of flutter_crashlytics now.

[0.0.6] - 25.03.2020 #

  • Using firebase.analytics for web, because firebase_analytics does not support web yet.

[0.1.0] - 25.03.2020 #

  • Good enough for v0.1.0.

[0.1.1] - 25.03.2020 #

  • Added missing export.

[0.1.2] - 25.03.2020 #

  • Added more already existing methods to IAnalyticsService.

[0.1.3] - 25.03.2020 #

  • Crashlytics does not support web yet, logging to Analytics instead.

[0.1.4] - 25.03.2020 #

  • Added SharedPreferencesService.

[0.1.5] - 31.03.2020 #

  • Added LoggerMixin.staticLogger.

[0.1.6] - 04.05.2020 #

  • Decoupled CrashlyticsService from GoogleAnalyticsService.

[0.1.7] - 04.05.2020 #

  • Renamed Analytics* to GoogleAnalytics*

[0.1.8] - 04.05.2020 #

  • Added generic Analytics.

[0.1.9] - 04.05.2020 #

  • Added generic Analytics.

[0.1.10] - 04.05.2020 #

  • Added generic Analytics.

[0.1.11] - 04.05.2020 #

  • Added generic Analytics.

[0.1.12] - 04.05.2020 #

  • Added generic AnalyticsNavigatorObserver.

[0.1.13] - 04.05.2020 #

  • Decoupled CrashlyticsService from GoogleAnalyticsService.

[0.1.14] - 04.05.2020 #

  • Improved and expanded analytics.

[0.1.15] - 04.05.2020 #

  • Improved and expanded analytics.

[0.1.16] - 04.05.2020 #

  • Fixed DartTools.isReleaseBuild.

[0.1.17] - 05.05.2020 #

  • Added trackWarningWithException.

[0.1.18] - 05.05.2020 #

  • Added SharedPreferencesMixin.staticSharedPreferences.

[0.1.19] - 07.05.2020 #

  • Analytics: trackWarning/trackError: Renamed source to message, made params optional.

[0.1.20] - 23.05.2020 #

  • Crashlytics: Added CrashlyticsSource.

[0.1.21] - 24.05.2020 #

  • Added UrlLauncher.

[0.1.22] - 24.05.2020 #

  • Renamed UrlLauncher to UrlLauncherService.

[0.1.23] - 26.05.2020 #

  • Added BusyDialog.

[0.1.24] - 26.05.2020 #

  • Added BusyDialog.

[0.2.0] - 30.05.2020 #

  • Moved GoogleAnalytics to separate package.

[0.2.1] - 12.06.2020 #

  • Added textScaleFactor to BusyDialog.

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:


dependencies:
  eggnstone_flutter: ^0.2.1

2. Install it

You can install packages from the command line:

with Flutter:


$ flutter pub get

Alternatively, your editor might support flutter pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:


import 'package:eggnstone_flutter/eggnstone_flutter.dart';
  
Popularity:
Describes how popular the package is relative to other packages. [more]
48
Health:
Code health derived from static analysis. [more]
100
Maintenance:
Reflects how tidy and up-to-date the package is. [more]
90
Overall:
Weighted score of the above. [more]
72
Learn more about scoring.

We analyzed this package on Jul 11, 2020, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.8.4
  • pana: 0.13.14
  • Flutter: 1.17.5

Analysis suggestions

Package does not support Flutter platform android

Because:

  • package:eggnstone_flutter/eggnstone_flutter.dart that imports:
  • package:eggnstone_flutter/services/shared_preferences/SharedPreferencesService.dart that imports:
  • package:shared_preferences/shared_preferences.dart that imports:
  • package:shared_preferences_linux/shared_preferences_linux.dart that declares support for platforms: linux

Package does not support Flutter platform ios

Because:

  • package:eggnstone_flutter/eggnstone_flutter.dart that imports:
  • package:eggnstone_flutter/services/shared_preferences/SharedPreferencesService.dart that imports:
  • package:shared_preferences/shared_preferences.dart that imports:
  • package:shared_preferences_linux/shared_preferences_linux.dart that declares support for platforms: linux

Package does not support Flutter platform linux

Because:

  • package:eggnstone_flutter/eggnstone_flutter.dart that imports:
  • package:eggnstone_flutter/services/crashlytics/CrashlyticsService.dart that imports:
  • package:firebase_crashlytics/firebase_crashlytics.dart that declares support for platforms: android, ios, macos

Package does not support Flutter platform macos

Because:

  • package:eggnstone_flutter/eggnstone_flutter.dart that imports:
  • package:eggnstone_flutter/services/shared_preferences/SharedPreferencesService.dart that imports:
  • package:shared_preferences/shared_preferences.dart that imports:
  • package:shared_preferences_linux/shared_preferences_linux.dart that declares support for platforms: linux

Package does not support Flutter platform web

Because:

  • package:eggnstone_flutter/eggnstone_flutter.dart that imports:
  • package:eggnstone_flutter/services/shared_preferences/SharedPreferencesService.dart that imports:
  • package:shared_preferences/shared_preferences.dart that imports:
  • package:shared_preferences_linux/shared_preferences_linux.dart that declares support for platforms: linux

Package does not support Flutter platform windows

Because:

  • package:eggnstone_flutter/eggnstone_flutter.dart that imports:
  • package:eggnstone_flutter/services/url_launcher/UrlLauncherService.dart that imports:
  • package:url_launcher/url_launcher.dart that declares support for platforms: android, ios, linux, macos, web

Package not compatible with SDK dart

Because:

  • eggnstone_flutter that is a package requiring null.

Health suggestions

Fix lib/services/crashlytics/CrashlyticsService.dart. (-0.50 points)

Analysis of lib/services/crashlytics/CrashlyticsService.dart reported 1 hint:

line 122 col 13: 'onError' is deprecated and shouldn't be used. Use runZonedGuarded instead.

Format lib/services/analytics/AnalyticsMixin.dart.

Run flutter format to format lib/services/analytics/AnalyticsMixin.dart.

Format lib/services/analytics/AnalyticsNavigatorObserver.dart.

Run flutter format to format lib/services/analytics/AnalyticsNavigatorObserver.dart.

Fix additional 11 files with analysis or formatting issues.

Additional issues in the following files:

  • lib/services/analytics/IAnalyticsService.dart (Run flutter format to format lib/services/analytics/IAnalyticsService.dart.)
  • lib/services/crashlytics/CrashlyticsMixin.dart (Run flutter format to format lib/services/crashlytics/CrashlyticsMixin.dart.)
  • lib/services/logger/LoggerMixin.dart (Run flutter format to format lib/services/logger/LoggerMixin.dart.)
  • lib/services/logger/LoggerService.dart (Run flutter format to format lib/services/logger/LoggerService.dart.)
  • lib/services/shared_preferences/SharedPreferencesMixin.dart (Run flutter format to format lib/services/shared_preferences/SharedPreferencesMixin.dart.)
  • lib/services/shared_preferences/SharedPreferencesService.dart (Run flutter format to format lib/services/shared_preferences/SharedPreferencesService.dart.)
  • lib/services/url_launcher/UrlLauncherMixin.dart (Run flutter format to format lib/services/url_launcher/UrlLauncherMixin.dart.)
  • lib/services/url_launcher/UrlLauncherService.dart (Run flutter format to format lib/services/url_launcher/UrlLauncherService.dart.)
  • lib/tools/DartTools.dart (Run flutter format to format lib/tools/DartTools.dart.)
  • lib/tools/StringTools.dart (Run flutter format to format lib/tools/StringTools.dart.)
  • lib/widgets/BusyDialog.dart (Run flutter format to format lib/widgets/BusyDialog.dart.)

Maintenance suggestions

Maintain an example. (-10 points)

Create a short demo in the example/ directory to show how to use this package.

Common filename patterns include main.dart, example.dart, and eggnstone_flutter.dart. Packages with multiple examples should provide example/README.md.

For more information see the pub package layout conventions.

Dependencies

Package Constraint Resolved Available
Direct dependencies
Dart SDK >=2.7.0 <3.0.0
firebase_crashlytics ^0.1.3+3 0.1.3+3
flutter 0.0.0
get_it ^4.0.2 4.0.2
intl ^0.16.1 0.16.1
shared_preferences ^0.5.7+3 0.5.8
url_launcher ^5.4.10 5.5.0
Transitive dependencies
async 2.4.2
collection 1.14.12 1.14.13
file 5.2.1
flutter_web_plugins 0.0.0
meta 1.1.8 1.2.2
path 1.7.0
path_provider_linux 0.0.1+2
path_provider_platform_interface 1.0.2
platform 2.2.1
platform_detect 1.4.0
plugin_platform_interface 1.0.2
process 3.0.13
pub_semver 1.4.4
shared_preferences_linux 0.0.2+1
shared_preferences_macos 0.0.1+10
shared_preferences_platform_interface 1.0.4
shared_preferences_web 0.1.2+7
sky_engine 0.0.99
stack_trace 1.9.5
typed_data 1.1.6 1.2.0
url_launcher_linux 0.0.1+1
url_launcher_macos 0.0.1+7
url_launcher_platform_interface 1.0.7
url_launcher_web 0.1.2
vector_math 2.0.8 2.1.0-nullsafety
xdg_directories 0.1.0
Dev dependencies
flutter_test
mockito ^4.1.1