domingo, 6 de octubre de 2013

Archivo Hosts en el Emulador de Android

Cuando estamos en ambientes de prueba a veces necesitamos apuntar las url a direcciones IP especificas. Una gran mayoría de las personas saben donde queda su archivo HOSTS tanto en Windows como en Linux, pero cuando estamos desarrollando aplicaciones mobiles para Android lo tendremos que hacer por la consola con 4 simples pasos:

Se puede hacer ADB directo en la consola si configuraste el PATH en tus variables de entorno en Windows o en las variables en Linux, si no, no te preocupes navega por la consola hasta donde hayas instalado tu SDK de Android, y sigues los pasos con normalidad.

Pago 1 - Usamos el ADB para hacer remount,

adb remount


Paso 2 - Pasamos el archivo Hosts del emulador a nuestra maquina, to estoy en Windows por eso c:/

adb pull /system/etc/hosts c:\hosts


Paso 3 - Editamos nuestro archivo con notepad o cualquier editor de texto, por defecto solo encontraras 127.0.0.1   localhost y agregamos los que queramos

127.0.0.1             localhost

192.168.0.110     proyecto.ejemplo.com

192.168.0.110     proyecto-chocolate.chocolate.com

192.168.0.216    el-proyecto-que-quieras.com


Paso 4: Devolvemos el archivo al Emulador de Android

adb push c:\hosts /system/etc

Siempre que arranquemos el emulador debemos repetir el paso 1 y 4. Si alguien sabe como dejar permanentemente el archivo hosts en el emulador, puede dejarlo en los comentarios.
Si queremos hacerlo directo en nuestros dispositivos celulares, necesitaremos Rootear nuestro dispositivo, y seguimos los mismos pasos, o nos bajamos aplicaciones desde el Play Store buscando por la palabra Hosts, de igual forma necesitaremos rootear el telefono.

Espero que sea de ayuda, saludos a todos.

domingo, 30 de junio de 2013

Symfony2 - Crear o actualizar una sola entidad desde la base de datos

Por lo general en las paginas que encontramos en google sobre crear las entidades con ingenieria inversa de la base de datos a clases de php, el proceso que encontramos en volvar absolutamente toda la base de datos.

Con los mismo comandos pero agregandole unos parametros extra podremos crear o actualizar una sola entidad, para esos momentos en que se crearon unas tablas y no queremos afectar la logica que ya hemos creado en las otras entidades.

El primer comando es crear nuestras entidades en XML o YML, el parametro --force es opcional si quieren lo pueden quitar, el parametro --filter es el nombre de la tabla de referencia para crear nuestro xml o yml

php app/console doctrine:mapping:convert XML-O-YML ./src/Backend/EntityBundle/Resources/config/doctrine/metadata/orm --from-database --force --filter="NombreDeLaTablaEnCamelCase" 

Luego creamos los annotatios, con --filter le especificamos cual es la entidad que queremos crear o actualizar

php app/console doctrine:mapping:import BackendEntityBundle annotation --filter="NombreDeLaTablaEnCamelCase"

Y por ultimo los getters y setters y especificamos la clase colocanto dos puntos y el nombre de la entidad

php app/console doctrine:generate:entities BackendEntityBundle:NombreDeLaTablaEnCamelCase