/// <summary> /// Starts the screens object requests, Must be called to receive screens data from /// the underlying system /// </summary> protected override MLResult StartAPI() { MLResult.Code resultCode = MLScreensNativeBindings.MLScreensGetWatchHistoryList(ref _watchHistoryList); var result = MLResult.Create(resultCode); if (!result.IsOk) { MLPluginLog.ErrorFormat("MLScreens.StartAPI failed to retrieve saved screen information. Reason: {0}", result); return(result); } PopulateWatchHistory(); resultCode = MLScreensNativeBindings.MLScreensReleaseWatchHistoryList(ref _watchHistoryList); result = MLResult.Create(resultCode); if (!result.IsOk) { MLPluginLog.ErrorFormat("MLScreens.StartAPI failed to clean screens data. Reason: {0}", result); return(result); } _defaultGrayThumbnailImage = CreateGrayThumbnailImage(); return(result); }