/// <summary> /// Updates the status when a power changed event occurs. /// </summary> /// <returns>The async task.</returns> private async Task UpdateStatus() { await Dispatcher.DispatchAsync(() => { BatteryReportModel.Update(); Percentage = (Common.IsEmulator() ? 98 : BatteryReportModel.Percentage); Estimate = BatteryReportModel.Estimate; Status = BatteryReportModel.StatusDescription; }); }
/// <summary> /// Generates all the pages for the band tile. /// </summary> /// <param name="applicationUpdate">True if being updated by the application.</param> /// <returns>An array of page data.</returns> public static PageData[] GeneratePages(bool applicationUpdate = false) { BatteryReportModel.Update(); var results = new List <PageData>(); var estimate = BatteryReportModel.Estimate; results.Insert(0, GenerateMainPageData()); if (!string.IsNullOrEmpty(estimate)) { results.Insert(0, GenerateEstimatePageData(estimate)); } results.Insert(0, GenerateInfoPageData(applicationUpdate)); return(results.ToArray()); }
/// <summary> /// Checks the power change event to see if the user's device is fully charged, and if this is /// a new power state change.. /// </summary> private void CheckPowerChange() { BatteryReportModel.Update(); try { var status = ApplicationData.Current.LocalSettings.Values[Status]; _isPowerChange = (status == null) || !string.Equals(BatteryReportModel.Status.ToString(), status.ToString()); if ((status == null) || !string.Equals(status.ToString(), BatteryStatus.Idle.ToString(), StringComparison.OrdinalIgnoreCase)) { _isFullCharge = ((BatteryReportModel.Status == BatteryStatus.Idle) && (BatteryReportModel.Percentage == 100)); } } catch (Exception exception) { Logging.AppendError("CheckPowerChange", exception.Message); } finally { ApplicationData.Current.LocalSettings.Values[Status] = BatteryReportModel.Status.ToString(); } }