본문 바로가기
Dev/Android

Android 네트워크 시간 가져오는 방법

by healthyryu 2018. 1. 17.

Android 네트워크 시간 가져오는 방법



해당 어플리케이션이 자동 시간을 해제할 경우 네트워크 시간을 가져오기 위해서 검색했습니다.

네트워크 시간을 가져오기 전에 날짜 및 시간 체크가 자동설정으로 되어있는지 체크를 하고 진행했습니다.



참고 코드

public static final String TIME_SERVER = "pool.ntp.org";


public static long getCurrentNetworkTime() {

    NTPUDPClient lNTPUDPClient = new NTPUDPClient();

    lNTPUDPClient.setDefaultTimeout(3000);

    long returnTime = 0;

    try {

        lNTPUDPClient.open();

        InetAddress lInetAddress = InetAddress.getByName(TIME_SERVER);

        TimeInfo lTimeInfo = lNTPUDPClient.getTime(lInetAddress);

        // returnTime =  lTimeInfo.getReturnTime(); // local time

        returnTime = lTimeInfo.getMessage().getTransmitTimeStamp().getTime();   //server time

    } catch (Exception e) {

        e.printStackTrace();

    } finally {

        lNTPUDPClient.close();

    }


    return returnTime;

}


dependency 추가

compile 'commons-net:commons-net:3.6'



참고 : http://iosdevlog.com/ntp/2017/07/04/network-time-protocal-ntp-android.html

반응형