2013-09-04 5 views
2

나는 안드로이드 애플 리케이션을위한 원자 시간을 얻으려고하고있다. 나는 NTP (SntpClient.java에서 = 샘플 코드)를 구현하는 NTP 클라이언트로 http://hi-android.info/src/android/net/SntpClient.java.html 다음 코드를 사용하고 있습니다 :이 목록에서 다른 서버 시도 Android : Get Atomic Time

SntpClient client = new SntpClient(); 
if (client.requestTime("time.foo.com")) { 
    long now = client.getNtpTime() + SystemClock.elapsedRealtime() - client.getNtpTimeReference(); 
} 

: http://mindprod.com/jgloss/timesources.html을하지만, "client.requestTime ("서버") "거짓"항상 "...

내 코드 : 내가 잘못 뭐하는 거지

SntpClient client = new SntpClient(); 
if (client.requestTime("hera.limescope.net", 10000)) { 
    long now = client.getNtpTime() + SystemClock.elapsedRealtime() - client.getNtpTimeReference(); 
    textAtomicClock.setText(String.valueOf(now)); 
} 

?

프레디

+0

당신은 여러 대의 서버를 사용했지만 위의 서버에는 올바르게 구성된 DNS가없는 것으로 나타났습니다. '0.debian.pool.ntp.org'을 시도해보십시오. – Qben

+0

그저 그 예입니다. 나는 독일에 있기 때문에 모든 DE Server 목록에 나열되어 있습니다 ... – Freddi

+0

방금 ​​목록에서 임의의 숫자 (그다지 많지 않음)를 시도했지만 아무도 포트 123에 응답하지 않았습니다. 어쨌든, 그것은 단지 의견이었습니다. :) – Qben

답변

0

내 실수를 찾아 냈습니다! 백그라운드에서 ntp 작업을 처리해야한다는 것을 알지 못했습니다 ... Androids AsyncTask 기능으로 문제를 해결했습니다. 나를 도와 주신 모든 분들께 감사드립니다!

+0

코드를 공유하십시오. – statosdotcom