I simply want to display a date/time according to device locale and settings like 12h/24h mode.
Having take a look at several posts here on SO, I finally tried to use this:
long millis = this.startDate.getTime();
if (DateFormat.is24HourFormat(context)) { // Why do I have to check that ?!?
strDate = DateUtils.formatDateTime(context, millis, DateUtils.FORMAT_SHOW_DATE | DateUtils.FORMAT_SHOW_YEAR | DateUtils.FORMAT_SHOW_TIME | DateUtils.FORMAT_24HOUR);
} else {
strDate = DateUtils.formatDateTime(context, millis, DateUtils.FORMAT_SHOW_DATE | DateUtils.FORMAT_SHOW_YEAR | DateUtils.FORMAT_SHOW_TIME);
}
Unfortunately, DateUtils.FORMAT_24HOUR
is now deprecated so, I wonder how to display a date taking care of device local and settings?
So SimpleDateFormat is not an expected answer as I don't want to specify the format myself.