package nodomain.freeyourgadget.gadgetbridge.util; import android.text.format.DateUtils; import com.github.pfichtner.durationformatter.DurationFormatter; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; import java.util.concurrent.TimeUnit; import nodomain.freeyourgadget.gadgetbridge.GBApplication; public class DateTimeUtils { public static String formatDate(Date date) { return DateUtils.formatDateTime(GBApplication.getContext(), date.getTime(), DateUtils.FORMAT_SHOW_DATE); // long dateMillis = date.getTime(); // if (isToday(dateMillis)) { // return "Today"; // } // if (isYesterday(dateMillis)) { // return "Yesterday"; // } // DateFormat.getDateInstance(DateFormat.SHORT).format(date); } public static String formatDurationHoursMinutes(long duration, TimeUnit unit) { DurationFormatter df = DurationFormatter.Builder.SYMBOLS .maximum(TimeUnit.DAYS) .minimum(TimeUnit.MINUTES) .suppressZeros(DurationFormatter.SuppressZeros.LEADING) .maximumAmountOfUnitsToShow(2) .build(); return df.format(duration, unit); } public static String formatDateRange(Date from, Date to) { return DateUtils.formatDateRange(GBApplication.getContext(), from.getTime(), to.getTime(), DateUtils.FORMAT_SHOW_DATE); } public static Date shiftByDays(Date date, int offset) { Calendar cal = GregorianCalendar.getInstance(); cal.setTime(date); cal.add(GregorianCalendar.DAY_OF_YEAR, offset); Date newDate = cal.getTime(); return newDate; } }