Foros del Web » Programando para Internet » Android »

Codigo limpio - Poner Try Catch en lugar adecuado.

Estas en el tema de Codigo limpio - Poner Try Catch en lugar adecuado. en el foro de Android en Foros del Web. Buenos días desde España foreros !!! Vereis, estoy empezando con esto de Android, y actualmente tengo una clase la cual hace una llamada a un ...
  #1 (permalink)  
Antiguo 14/02/2012, 04:06
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 21 años, 5 meses
Puntos: 7
Codigo limpio - Poner Try Catch en lugar adecuado.

Buenos días desde España foreros !!!

Vereis, estoy empezando con esto de Android, y actualmente tengo una clase la cual hace una llamada a un WebService y recibe datos (Aqui os preguntaré otro día, como poder programar un Evento para usar desde la UI, jeje)

Bueno, la cuestión es que todo va perfectamente, desde la UI, me he creado un metodo que engloba una Thread, que a su vez engloba un Handler para procesar mensajes a la UI. Va todo sobre ruedas.

Sin embargo... quería meter una captura de Excepción en esté método para que me lance un AlertDialog, indicando que algo hay ido mal (Por ejemplo, si el webservice está caido, o si el usuario no tiene internet, o cualquier otra cosa)

El método que tengo es el siguiente:
Código:
    private Handler handler;
    public void StartLogin(final String loginName, final String password)
    {
    	
    	ProgressBarControl().setVisibility(View.VISIBLE);
    	
    	Runnable runnable = new Runnable()
    	{

			@Override
			public void run() 
			{

	    		WebServiceManager objService = new WebServiceManager();
	    		
	    		final String resultado = objService.StartLogin(loginName, password);	    		
	    		
	    		handler.post(new Runnable(){

					@Override
					public void run()
					{
						
						ProgressBarControl().setVisibility(View.INVISIBLE);
						LblErrorControl().setText(resultado);
					}	    			
	    		});
			}    	
    	};
    	
    	new Thread(runnable).start();
    }
Bien... debería meter un try{}catch{} en cada métod Run() ??? O podría ahorrarme tanto código y meter un try catch por ejemplo, en el evento del botón que llame al método??? Eso serviria o por ejecutarse todo en una hebra, si hay una excepción ahí dentro, no es capturable desde "fuera" ???

Por ejemplo... esto valdría ??
Código:

    	try 
    	{
    		
    		StartLogin(TxtUserControl().getText().toString(), 
    				   TxtPasswordControl().getText().toString());
		} 
    	catch (Exception ex) 
		{

			new AlertDialog.Builder(this).setTitle("Argh").setMessage(ex.getMessage()).setNeutralButton("OK", null).show();
		}

En fin... es una tontería, pero espero puedan ayudarme... Desde ya, gracias.
__________________
Charlie.

Etiquetas: catch, lugar, todo, webservice
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:38.