code: protected DateFormat guessDateFormat(int dateStyle, int timeStyle) {
          DateFormat result;
          ULocale dfLocale = getAvailableLocale(TYPE_DATEFORMAT);
          if (dfLocale == null) {
              dfLocale = ULocale.ROOT;
          }
          if (timeStyle == DF_NONE) {
              result = DateFormat.getDateInstance(getCalendar(), dateStyle, dfLocale);
          } else if (dateStyle == DF_NONE) {
              result = DateFormat.getTimeInstance(getCalendar(), timeStyle, dfLocale);
          } else {
              result = DateFormat.getDateTimeInstance(getCalendar(), dateStyle, timeStyle, dfLocale);
          }
          return result;
      }
docs: This function can be overridden by subclasses to use different heuristics.
  <b>It MUST return a 'safe' value,
  one whose modification will not affect this object.</b>
  
  @param dateStyle
  @param timeStyle
  @hide draft / provisional / internal are hidden on Android