Loading src/com/android/settings/fuelgauge/BatteryInfo.java +8 −4 Original line number Diff line number Diff line Loading @@ -153,6 +153,7 @@ public class BatteryInfo { new AsyncTask<Void, Void, BatteryInfo>() { @Override protected BatteryInfo doInBackground(Void... params) { boolean shouldCloseBatteryUsageStats = false; BatteryUsageStats stats; if (batteryUsageStats != null) { stats = batteryUsageStats; Loading @@ -160,6 +161,7 @@ public class BatteryInfo { try { stats = context.getSystemService(BatteryStatsManager.class) .getBatteryUsageStats(); shouldCloseBatteryUsageStats = true; } catch (RuntimeException e) { Log.e(TAG, "getBatteryInfo() from getBatteryUsageStats()", e); // Use default BatteryUsageStats. Loading @@ -168,11 +170,13 @@ public class BatteryInfo { } final BatteryInfo batteryInfo = getBatteryInfo(context, stats, shortString); if (shouldCloseBatteryUsageStats) { try { stats.close(); } catch (Exception e) { Log.e(TAG, "BatteryUsageStats.close() failed", e); } } return batteryInfo; } Loading src/com/android/settings/fuelgauge/PowerUsageBase.java +15 −10 Original line number Diff line number Diff line Loading @@ -83,6 +83,7 @@ public abstract class PowerUsageBase extends DashboardFragment { public void onStop() { super.onStop(); mBatteryBroadcastReceiver.unRegister(); closeBatteryUsageStatsIfNeeded(); } protected void restartBatteryStatsLoader(int refreshType) { Loading @@ -104,16 +105,6 @@ public abstract class PowerUsageBase extends DashboardFragment { final long startTime = System.currentTimeMillis(); historyPref.setBatteryUsageStats(mBatteryUsageStats); BatteryUtils.logRuntime(TAG, "updatePreference", startTime); if (mBatteryUsageStats == null) { return; } try { mBatteryUsageStats.close(); } catch (Exception e) { Log.e(TAG, "BatteryUsageStats.close() failed", e); } finally { mBatteryUsageStats = null; } } private class BatteryUsageStatsLoaderCallbacks Loading @@ -130,6 +121,7 @@ public abstract class PowerUsageBase extends DashboardFragment { @Override public void onLoadFinished(Loader<BatteryUsageStats> loader, BatteryUsageStats batteryUsageStats) { closeBatteryUsageStatsIfNeeded(); mBatteryUsageStats = batteryUsageStats; PowerUsageBase.this.onLoadFinished(mRefreshType); } Loading @@ -138,4 +130,17 @@ public abstract class PowerUsageBase extends DashboardFragment { public void onLoaderReset(Loader<BatteryUsageStats> loader) { } } private void closeBatteryUsageStatsIfNeeded() { if (mBatteryUsageStats == null) { return; } try { mBatteryUsageStats.close(); } catch (Exception e) { Log.e(TAG, "BatteryUsageStats.close() failed", e); } finally { mBatteryUsageStats = null; } } } Loading
src/com/android/settings/fuelgauge/BatteryInfo.java +8 −4 Original line number Diff line number Diff line Loading @@ -153,6 +153,7 @@ public class BatteryInfo { new AsyncTask<Void, Void, BatteryInfo>() { @Override protected BatteryInfo doInBackground(Void... params) { boolean shouldCloseBatteryUsageStats = false; BatteryUsageStats stats; if (batteryUsageStats != null) { stats = batteryUsageStats; Loading @@ -160,6 +161,7 @@ public class BatteryInfo { try { stats = context.getSystemService(BatteryStatsManager.class) .getBatteryUsageStats(); shouldCloseBatteryUsageStats = true; } catch (RuntimeException e) { Log.e(TAG, "getBatteryInfo() from getBatteryUsageStats()", e); // Use default BatteryUsageStats. Loading @@ -168,11 +170,13 @@ public class BatteryInfo { } final BatteryInfo batteryInfo = getBatteryInfo(context, stats, shortString); if (shouldCloseBatteryUsageStats) { try { stats.close(); } catch (Exception e) { Log.e(TAG, "BatteryUsageStats.close() failed", e); } } return batteryInfo; } Loading
src/com/android/settings/fuelgauge/PowerUsageBase.java +15 −10 Original line number Diff line number Diff line Loading @@ -83,6 +83,7 @@ public abstract class PowerUsageBase extends DashboardFragment { public void onStop() { super.onStop(); mBatteryBroadcastReceiver.unRegister(); closeBatteryUsageStatsIfNeeded(); } protected void restartBatteryStatsLoader(int refreshType) { Loading @@ -104,16 +105,6 @@ public abstract class PowerUsageBase extends DashboardFragment { final long startTime = System.currentTimeMillis(); historyPref.setBatteryUsageStats(mBatteryUsageStats); BatteryUtils.logRuntime(TAG, "updatePreference", startTime); if (mBatteryUsageStats == null) { return; } try { mBatteryUsageStats.close(); } catch (Exception e) { Log.e(TAG, "BatteryUsageStats.close() failed", e); } finally { mBatteryUsageStats = null; } } private class BatteryUsageStatsLoaderCallbacks Loading @@ -130,6 +121,7 @@ public abstract class PowerUsageBase extends DashboardFragment { @Override public void onLoadFinished(Loader<BatteryUsageStats> loader, BatteryUsageStats batteryUsageStats) { closeBatteryUsageStatsIfNeeded(); mBatteryUsageStats = batteryUsageStats; PowerUsageBase.this.onLoadFinished(mRefreshType); } Loading @@ -138,4 +130,17 @@ public abstract class PowerUsageBase extends DashboardFragment { public void onLoaderReset(Loader<BatteryUsageStats> loader) { } } private void closeBatteryUsageStatsIfNeeded() { if (mBatteryUsageStats == null) { return; } try { mBatteryUsageStats.close(); } catch (Exception e) { Log.e(TAG, "BatteryUsageStats.close() failed", e); } finally { mBatteryUsageStats = null; } } }