content: package cn.android.zonda.retrofit;
  
  import retrofit.Callback;
  import retrofit.RetrofitError;
  import retrofit.client.Response;
  import android.app.Activity;
  import android.os.AsyncTask;
  import android.os.Bundle;
  import android.widget.TextView;
  import cn.android.zonda.retrofit.data.WeatherForecastResult;
  import cn.android.zonda.retrofit.data.WeatherHistoryResult;
  
  public class RetrofitDemoActivity extends Activity {
  
      TextView tv;
  
      @Override
      protected void onCreate(Bundle savedInstanceState) {
  
          super.onCreate(savedInstanceState);
  
          setContentView(R.layout.main_layout);
  
          tv = (TextView)findViewById(R.id.demo_tv);
  
          OpenWeatherApiService openWeatherApiService = OpenWeatherApiServiceBuilder.build();
  
          openWeatherApiService.getForecastWeather("china,guangzhou", "zh_cn", "10",
                  new Callback<WeatherForecastResult>() {
  
                      @Override
                      public void success(WeatherForecastResult weatherForecastResult, Response response) {
  
                          String tipText = new StringBuilder("the response \n \n  url : ").append(response.getUrl())
                                  .append("\n \n  status: ").append(response.getStatus()).append("\n \n reult: ")
                                  .append(weatherForecastResult.toJson()).toString();
  
                          tv.setText(tipText);
                      }
  
                      @Override
                      public void failure(RetrofitError error) {
  
                          tv.setText(error.getMessage());
                      }
                  });
          
  //        new RetrofitDemoTask().execute();
      }
      
      class RetrofitDemoTask extends AsyncTask<Void, Void, WeatherHistoryResult>{
  
          @Override
          protected WeatherHistoryResult doInBackground(Void... params) {
              
              return OpenWeatherApiServiceBuilder.build().getHistoryWeather("china,guangzhou");
          }
          
          @Override
          protected void onPostExecute(WeatherHistoryResult result) {
  
              super.onPostExecute(result);
              
              String tipText = new StringBuilder("result: \n \n ")
                      .append(result.toJson()).toString();
  
              tv.setText(tipText);
          }
      } 
  
  }
  