records[0].get(NULL, BATTERY_LAST_HEART_ACCESS_TIME, &__lastHeartAccessTime);
}
+ // Adjust last full time & last heart access time
+ int percent = 0;
+ bool charging = false;
+ device_battery_get_percent(&percent);
+ device_battery_is_charging(&charging);
+
int currentTime = CURRENT_TIME;
- if (__lastFullTime == 0) {
+ if (!charging && percent == 100) { // Fully charged
+ __lastFullTime = currentTime;
+ __lastHeartAccessTime = currentTime;
+ _I("Fully charged. Last fully charged time: %d", __lastFullTime);
+ __updateLastInfo();
+ } else if (__lastFullTime == 0) { // Never fully charged yet
__lastFullTime = currentTime;
_I("Device has not fully charged until now. Start time of recent battery usage will be %d", __lastFullTime);
__updateLastInfo();