Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android


 
Herramientas
  #1  
Viejo 07/03/14, 11:45:29
Avatar de Napster87
Napster87 Napster87 no está en línea
Miembro del foro
Mensajes: 74
 
Fecha de registro: may 2013
Mensajes: 74
Tu operador: Movistar
Mencionado: 0 comentarios
Tagged: 0 hilos
Codigo Qr url a browser

Hola! estoy usando la libreria de zxing para usar su lector de codigos qr.Mi idea es abrir una pagina a partir de una url que obtengo del codigo que genero.Este lo he creado y puse la direccion de una web,aplicando un show se que lee perfectamente la direccion pero al mostrarla se crashea. Estoy haciendo esto:

Código:
Intent intent = new Intent("prueba.android.turismo.SCAN");
startActivityForResult(intent, 0);
	
	public void onActivityResult(int requestCode, int resultCode, Intent intent) {
	    if (requestCode == 0) {
	        if (resultCode == RESULT_OK) {
	            String contenido = intent.getStringExtra("SCAN_RESULT");
	            Toast.makeText(getApplicationContext(), "Lectura QR: "+contenido, Toast.LENGTH_LONG).show();
	  	        String formato = intent.getStringExtra("SCAN_RESULT_FORMAT");
	            Intent web = new Intent(Intent.ACTION_VIEW, 
        				Uri.parse(contenido));
		startActivity(web);

	            // Hacer algo con los datos obtenidos.
	        } else if (resultCode == RESULT_CANCELED) {
	            // Si se cancelo la captura.
	        }
	    }
	}
En contenido almaceno la url del codigo qr,pero no consigo abrir el browser de esta manera,alguna sugerencia?se crashea y en el log dice "no activity found to handle intent".
Tengo una activity dedicada a esta parte,es algo tonto pero no logro averiguarlo...

Saludos!!
Responder Con Cita


  #2  
Viejo 08/03/14, 02:14:50
Avatar de Manu14s
Manu14s Manu14s no está en línea
Usuario novato en la web
Mensajes: 15
 
Fecha de registro: oct 2013
Mensajes: 15
Tu operador: Movistar
Mencionado: 0 comentarios
Tagged: 0 hilos
Crea una actividad que contenga un webview(en su correspondiente layout claro).en esta actividad webview tendras que ingresar una url. En vez de pasarle una url le pasas el valor de tu variable contenido. En el if ,le metes que inicie esta actividad webview. Es facil, sino sabes como hacerlo ,me lo dices y te lo detallo mas. Un saludo
Responder Con Cita
Gracias de parte de:
  #3  
Viejo 10/03/14, 09:56:55
Avatar de Napster87
Napster87 Napster87 no está en línea
Miembro del foro
Mensajes: 74
 
Fecha de registro: may 2013
Mensajes: 74
Tu operador: Movistar
Mencionado: 0 comentarios
Tagged: 0 hilos
Gracias por la idea,asi si lo he conseguido hacer funcionar

Dejo el codigo por si le vale a alguien en un futuro:

[code]public void LectorQR(View v) {

Intent intent = new Intent("prueba.android.turismo.SCAN");
startActivityForResult(intent, 0);

}



public void onActivityResult(int requestCode, int resultCode, Intent intent) {
if (requestCode == 0) {
if (resultCode == RESULT_OK) {
String contenido = intent.getStringExtra("SCAN_RESULT");
String formato = intent.getStringExtra("SCAN_RESULT_FORMAT");
Intent i = new Intent(this, LectorQR.class);
i.putExtra("contenido", contenido);
startActivity(i);

// Hacer algo con los datos obtenidos.
} else if (resultCode == RESULT_CANCELED) {
// Si se cancelo la captura.
}
}
}

Y en clase LectorQR,en oncreate:
Código:
  WebView myWebViewDATOS = (WebView) findViewById(R.id.webViewQR);
		 myWebViewDATOS.getSettings().setJavaScriptEnabled(true);
	        
		 
	        /* Prevent WebView from Opening the Browser */
		 myWebViewDATOS.setWebViewClient(new InsideWebViewClient());
		 myWebViewDATOS.loadUrl(bundle.getString("contenido"));
			
	    }
	    
	    /* Class that prevents opening the Browser */
	    private class InsideWebViewClient extends WebViewClient {
	        @Override
	        public boolean shouldOverrideUrlLoading(WebView view, String url) {
	            view.loadUrl(url);
	            return true;
	        }
	    }
Con esto funciona a la perfeccion,espero que le sirva a alguien.Sencillo y eficaz jeje

Última edición por Napster87 Día 10/03/14 a las 12:01:33
Responder Con Cita
Respuesta

Estás aquí
Regresar   HTCMania > Todo sobre Android > Programación y Desarrollo para Android

Herramientas

Reglas de Mensajes
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Las caritas están On
Código [IMG] está On
Código HTML está Off

Saltar a Foro



Hora actual: 04:20:49 (GMT +2)

Cookies settings
Powered by vBulletin™
Copyright © vBulletin Solutions, Inc. All rights reserved.
 
HTCMania: líderes desde el 2007