viernes, 27 de enero de 2012

zXing - Integración usando IntentIntegrator&IntentResult

Viendo que este tutorial sobre zXing es bastante visitado, he pensado en hacer otro pero usando las clases de utilidad para integracion que ofrece zXing.

Estas clases facilitan mucho el uso del scanner, ya que lo unico que hacen es llamar a la aplicacion BarcodeScanner de zXing e incluso te la instalan si no lo tienes!, asi no necesitas modificar prácticamente nada en tu proyecto, simplemente incluir dichas clases y a disfrutar xD.

El proceso es el siguiente:

Te pillas del repositorio el IntentIntegrator.

Nota: He visto que han sacado otras versiones de este archivo (para android 4.0, 3.0...), yo lo probe con el que he puesto y funciona.

Te pillas tambien el IntentResult.

Estas 2 clases las metes en tu proyecto, donde quieras.

Y ahora añades el siguiente código en la zona donde quieras que se lance el scanner del zXing, (por ejemplo en el onClick() de un botón), cambiando yourActivity por la actividad que quieres que maneje el intent, (generalmente con this servirá).

IntentIntegrator integrator = new IntentIntegrator(yourActivity);
integrator.initiateScan();

Con esto escanearía todo tipo de códigos, si quieres limitarlo, puedes usar las siguientes constantes finales de la propia clase, pasandoselas al initiateScan().

IntentIntegrator.QR_CODE_TYPES
IntentIntegrator.PRODUCT_CODE_TYPES
IntentIntegrator.ONE_D_CODE_TYPES
IntentIntegrator.DATA_MATRIX_TYPES

Y actualizas o creas el onActivityResult() de tu activity con este codigo.
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
  IntentResult scanResult = IntentIntegrator.parseActivityResult(requestCode, resultCode, intent);
  if (scanResult != null && scanResult.getContents() != null) {
    String raw = scanResult.getContents();
    // handle scan result
  }
  // else continue with any other code you need in the method
  ...
}

Que te devuelve la información del intent, usando el metodo getContents().

Como lo explican en la página de zXing (aqui) a mi me dio problemas, así que probad este sistema.
Además si quieres personalizar el texto que aparece cuando la aplicación no esta instalada, modifica las variables de la clase IntentIntegrator
IntentIntegrator.DEFAULT_TITLE
IntentIntegrator.DEFAULT_MESSAGE
IntentIntegrator.DEFAULT_YES
IntentIntegrator.DEFAULT_NO

Pues esto es todo, bastante sencillo aunque no queda tan chulo como meter el scannner en tu proyecto, pero bueno, algo es algo. Un saludo!

lunes, 23 de enero de 2012

Loulogio - Humor Inteligente! pa ke!

3 palabras ---- EL PUTO AMO

Lo conocí con la batamanta, después ví el pajilleitor plus, y ahora veo que va haciendose más famosillo, y por fin le veo la cara, en @vistolovistoTV.

Podeis seguirlo en twitter con @

Os dejo sus videos  que hablan por si solos:

Pajilleitor Plus


Pajilleitor Evolution (Parodia de parodia)


Batamanta ( tengo una y es la leche xDD)


Ferchu Motivador


Monologo


Un saludo!

viernes, 20 de enero de 2012

AmaterasUML - Instalar en Eclipse Helios

Nunca viene de más tener un plugin para hacerte tus diagramillas y este va bastante bien.
Los pasos que comento son para Helios, pero funcionará prácticamente igual en otra versiones (posteriores a la 3.2)


1-Para hacerlo primero nos descargamos los archivos del amateras desde aquí.

2-Ahora descomprimimos los archivos en la carpeta plugins de nuestra instalación de eclipse.

3-Ahora necesitamos 2 cosas, JDT y GEF, JDT debería venir instalado ya en vuestro eclipse así que instalaremos GEF.

4-Nos vamos al eclipse y en help>install new software en work with pegamos la siguiente url:

http://download.eclipse.org/tools/gef/updates/releases

5-Y seleccionamos la opción de Graphical Editing Framework GEF, next next y tal hasta que pida reiniciar y reinicamos el eclipse.



6-Una vez reiniciado ya debería rular, nos vamos a New>File>Other y debería aparecer AmaterasUML, tal y como aparece en la imagen.



Y esto es todo, personalmente la opción más interesante es la de generar código a partir del UML o generar el UML a partir de código (drag and drop), que puede ayudarnos a explicar mejor nuestro código o entender mejor el de otros!

Un saludo!


martes, 17 de enero de 2012

Oracle XE - Solución para "no puedo acceder a http://127.0.0.1:8080/apex/"

Si has tenido este problema, probablemente sea por que has cambiado el nombre de tu maquina, o se ha cambiado sola (raro).

Tras buscar por inet encontré una solución parcial para Ubuntu, pero yo lo tengo en windows 7, así que investigue algo y la adapte un poco y funciona!

Tan simple como ir al directorio:

..\oraclexe\app\oracle\product\10.2.0\server\NETWORK\ADMIN

Y modificamos 2 archivos (requiere permisos de admin), listener.ora y tnsnames.ora, buscamos donde aparezca

HOST = TAL


Y cambiamos el TAL (en este caso es ROOT), o lo que os salga a vosotros por vuestro actual nombre de máquina, para saber vuestro nombre de máquina, abrid por ejemplo Equipo y mirad lo que pone abajo a la izquierda


Ahora tenemos que reiniciar lo del oracle, usamos desde inicio la opción de Parar y luego Iniciar la base de datos, (ejecutad también como administrador).



y ahora volvemos a intentar entrar y ya debería funcionar!

Un tutorial algo penco pero estoy falto de tiempo estos días, de todos modos espero que os sirva.

Un saludo!