установка времени ожидания подключения в Android - PullRequest
2 голосов
/ 21 декабря 2011

Я использую некоторые веб-сервисы в Android, в которых я хочу, чтобы, если ответ не пришел в течение 1 минуты, должен отображаться диалог с предупреждением о том, что Интернет недоступен.Я использую время ожидания подключения, как показано в следующем коде:

try
{
    HttpPost httppost =new HttpPost(Constants.getHostString() + "/apps_user_ebooks_preview.jsp");
    HttpParams httpParameters = new BasicHttpParams();
    int timeoutConnection = 60000;
    HttpConnectionParams.setConnectionTimeout(httpParameters, timeoutConnection);
    int timeoutSocket = 60000;
    HttpConnectionParams.setSoTimeout(httpParameters, timeoutSocket);       
    DefaultHttpClient httpClient =new DefaultHttpClient(httpParameters);
    BasicHttpResponse httpResponse =(BasicHttpResponse) httpClient.execute(httppost);
    httpClient.setParams(httpParameters);
    HttpEntity entity = httpResponse.getEntity();
    ResponseHandler<String> res =new BasicResponseHandler();
    List<NameValuePair> NVP =new ArrayList<NameValuePair>();
    NVP.add(new BasicNameValuePair("postString", j.toString()));
    httppost.setEntity(new UrlEncodedFormEntity(NVP));
    response = httpClient.execute(httppost, res);
}
catch(ConnectTimeoutException e){
    e.printStackTrace();
    System.out.println("here i am ");
    handler.sendEmptyMessage(CONNECTION_TIMEOUT);
    cnct=1;                                             
}
case CONNECTION_TIMEOUT:
    if (!isFinishing())
    {
        // m_ProgressDialog.cancel();
        lDialog = new Dialog(AdminEbooks.this, android.R.style.Theme_Translucent_NoTitleBar);
        lDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
        lDialog.setContentView(R.layout.r_okdialogview);
        ((TextView) lDialog.findViewById(R.id.dialog_title)).setVisibility(View.GONE);
        ((TextView) lDialog.findViewById(R.id.dialog_message)).setText("Internet Unavailable.");
        ((Button) lDialog.findViewById(R.id.ok)).setText("Ok");
        ((Button) lDialog.findViewById(R.id.ok)).setOnClickListener(new OnClickListener()
        {
            @Override
            public void onClick(View v)
            {
                lDialog.dismiss();
            }
         });
        lDialog.show();
    }
break;

Но это не работает.Может ли кто-нибудь помочь мне в этом?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...