2013-04-04 52 views
1

我有一個URL給我用於同步服務器時間到我的應用程序, 問題是如何做到這一點?任何人都可以向我解釋在這裏做什麼,謝謝我真的很感激。如何同步時間到android

這裏的URL = http://server10.instaforex.com:2012/TimeService/TimeService.svc/CurrentTime

這裏是我的mainactivity代碼。

public class MainActivity extends Activity { 

    Timer timeoutTimer; 
    final Random myRandom = new Random(); 
    GenerateTask genTask = new GenerateTask(); 
    static String RAN_TEXT = "text"; 

    class GenerateTask extends TimerTask { 
     boolean started = false; 
     public void run() { 
      if (started) { 
       System.out.println("generating"); 
       final TextView textGenerateNumber = (TextView)findViewById(R.id.generatenumber); 
       RAN_TEXT = ""; 

       for(int k=0;k<7;k++){ 
        RAN_TEXT += myRandom.nextInt(10) + " "; 
       } 
       runOnUiThread(new Runnable() { 

        @Override 
        public void run() { 
         textGenerateNumber.setText(RAN_TEXT); 
        } 
       }); 
      } 
     } 
    } 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     Button buttonGenerate = (Button)findViewById(R.id.generateme); 

     buttonGenerate.setOnClickListener(new OnClickListener(){ 

      @Override 
      public void onClick(View v) { 
       System.out.println("click"); 
       if (!genTask.started) { 
        genTask.started=true; 
        timeoutTimer = new Timer(); 
        timeoutTimer.scheduleAtFixedRate(genTask, 0, 30000); 
       } else { 
        genTask.started=false; 
        timeoutTimer.cancel(); 
       } 
      } 
     }); 
    } 
} 
+0

這裏有什麼問題? – 2013-04-04 10:42:00

+0

問題是如何同步從給定鏈接到我的應用程序的時間? – jun 2013-04-04 11:04:13

+0

我認爲你需要解析這個鏈接的結果,使用解析器,如 傑里科嘗試這個鏈接.. http://jericho.htmlparser.net/docs/index.html – Aadi 2013-04-04 11:13:40

回答

1

試試這個..

首先嘗試使用來獲取HTML鏈接的來源無論是從SO solution 1solution 2

環節的解決方案之一,你可以使用parsers解析其內容。

第三將解析的內容顯示爲所需的時間格式。

讓我知道,如果你面對任何困難..

+1

該鏈接返回一個XML。你爲什麼要把它加載到webview中,然後在你能直接解析內容時解壓縮它?你鏈接的答案是這樣的 - http://stackoverflow.com/questions/2376471/how-do-i-get-the-web-page-contents-from-a-webview?answertab=votes# – 2013-04-04 13:01:23

+0

你是對的:) 我試圖分裂它,以便他可以瞭解它是如何工作的。 – Aadi 2013-04-04 13:07:18

+0

@deepak和Adarsh你能告訴我如何做到這一點基於我的代碼上面? – jun 2013-04-05 02:11:26

0

目前還不清楚你的主要活動是什麼了,從您發佈的代碼。它只是連接一些隨機數並將其設置在文本區域中。

如果您正在尋找解析HTTP客戶端返回的XML輸出,那麼有許多示例顯示如何執行此操作。看看這個問題 - Android: parse XML from string problems

如果NTP時間是你真正感興趣的,有NTP clients for android that can help you sycn time correctly

使用這些解決方案之一,你很好去。

+0

我的錯我沒有解釋我的代碼,所以在這裏我會解釋,而你是正確的,實際上它是一個密碼生成器代碼,一旦按鈕被點擊,它將產生每30秒隨機7位數字。我想將我的應用程序的時間同步到他們給我的URL,因爲您可以看到應用程序有它自己的時間,所以我希望它能夠同步到他們的服務器。你可以請給我和例如基於我的代碼上面?以供將來參考 – jun 2013-04-05 10:40:21