start method
- {bool resolveImages: false,
- NowPlayingImageResolver resolver}
Starts the service.
Initialises stream, sets up the app lifecycle observer, starts a polling timer on iOS, sets incoming method handler for Android
Implementation
Future<void> start({bool resolveImages = false, NowPlayingImageResolver resolver}) async {
// async, but should not be awaited
this._resolveImages = resolver != null || resolveImages;
this._resolver = resolver ?? DefaultNowPlayingImageResolver();
this.track = NowPlayingTrack.notPlaying;
_controller = StreamController<NowPlayingTrack>.broadcast();
_controller.add(NowPlayingTrack.notPlaying);
await _bindToWidgetsBinding();
if (Platform.isAndroid) _channel.setMethodCallHandler(_handler);
if (Platform.isIOS) _refreshTimer = Timer.periodic(_refreshPeriod, _refresh);
final info = await PackageInfo.fromPlatform();
print('NowPlaying is part of ${info.packageName}');
await _refresh();
}