[java] sns 형태 시간 (몇분전)으로 변경하기
2021. 3. 26. 08:55ㆍ모바일/Android_Java
[java] sns 형태 시간 (몇분전)으로 변경하기
/**
* SNS 형태의 시간으로 변환
*
* 오늘 1분 이내 : 방금전
* 오늘 1시간 이내 : mm분 전
* 오늘 그외 : 오전오후 hh:mm
*
* @param stringDateTime yyyyMMddHHmmss
*/
public static String getSnsFormatTime(String stringDateTime) {
if (!TextUtils.isEmpty(stringDateTime) && stringDateTime.length() == 14) {
SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");
try {
Calendar calendar = Calendar.getInstance();
String msg = null;
String todayDate = DateUtil.getCalDate(calendar);
String targetDate = stringDateTime.substring(0, 8);
Date date = format.parse(stringDateTime);
long regTime = date.getTime();
if (todayDate.equals(targetDate)) {
long curTime = calendar.getTimeInMillis();
long diffTime = (curTime - regTime) / 1000;
if (diffTime < TIME_MAXIMUM.SEC) {
// 방금 전
msg = "방금 전";
} else if ((diffTime /= TIME_MAXIMUM.SEC) < TIME_MAXIMUM.MIN) {
// mm분 전
msg = diffTime + "분 전";
} else {
//오전(오후) hh:mm
SimpleDateFormat hourFormat = new SimpleDateFormat("a hh:mm");
msg = hourFormat.format(regTime);
}
} else {
//YY.MM.DD
SimpleDateFormat otherFormat = new SimpleDateFormat("yy.MM.dd");
msg = otherFormat.format(regTime);
}
return msg;
} catch (Exception e) {
e.printStackTrace();
}
return stringDateTime;
} else {
return "";
}
}
'모바일 > Android_Java' 카테고리의 다른 글
[Android] 스크롤 하면서 라디오버튼 체크 변경, 체크 클릭시 하면 해당 스크롤로 가기 (0) | 2021.04.13 |
---|---|
[Android] ViewPager 화면에 보일 때 호출 (setUserVisibleHint함수, mIsVisibleToUser변수) (0) | 2021.04.01 |
curl to java code (HttpURLConnection, URL, JSONparser,JSONObject) (0) | 2021.03.10 |
[Android] onNewIntent, onSaveInstanceState (0) | 2021.03.10 |
[android] theme, attr, style, color ,values 정리 (0) | 2021.02.26 |