|
||
|
![]() |
![]() |
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
|
||||
|
||||
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. } } } Tengo una activity dedicada a esta parte,es algo tonto pero no logro averiguarlo... Saludos!! |
|
#2
|
||||
|
||||
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
|
Gracias de parte de: | ||
#3
|
||||
|
||||
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; } } Última edición por Napster87 Día 10/03/14 a las 12:01:33. |
![]() |
![]() |
||||||
|