Categoría: Articulos

abr
28

Empezando a programar en AppEgine con Java

Pues hace poco que estoy liado con un proyecto y dedicí hacerlo con AppEngine para ver que resultados daba. Por ahora estoy en una fase muy temprana del proyecto y he decido escribir alguna de mis peripecias con AppEngine y Java, la primera: Como instalar el entorno de desarrollo.

Para poder trabajar con AppEngine es muy recomendable usar Eclipse. Esto te quitará muchos problemas y te ayudará durante muchas partes del desarrollo (si has usado AppEngine en Python sabrás a lo que me refiero)

Instalar JDK

Lo primero, ya que vamos a tener que compilar en Java, es tener instalado el JDK de Java. Seguramente en tu distribución de linux tengas la posibilidad de instalarlo directamente desde alguno de sus repositorios, sino puedes entrar en la Web de Java para bajarlo e instalarlo.

Deberías de tener la versión 1.6.

Instalando el plugin de AppEngine y configurando Eclipse

Para trabajar usaremos la última versión de Eclipse, la 3.4. Para instalar el plugin simplemente nos vamos a"Help > Software Updates.... ", entramos en la pestaña "Available Software" y pulsamos en el botón "Add Site...". En una nueva ventana nos pedirá una dirección y pondremos:

http://dl.google.com/eclipse/plugin/3.4

Una vez que pulsemos en el botón aceptar, nos aparecerá el plugin en la lista, marcamos el checkbox y pulsamos en el botón "Install".

AppEngine

Una vez terminado esto ya tenemos nuestro entorno preparado para empezar a trabajar.

Creando una Hola Mundo! en AppEngine

AppEngineEn la barra de botones de Eclipse tenemos 3 botones que nos sirven para crear proyectos en AppEngine. Pulsamos en el botón azul y nos sale la ventana para escribir los parámetros de nuestro proyecto. Le decimos que no use "Web Google Toolkit" y ponemos el nombre al proyecto y aceptamos.

AppEngine

Si miramos en el explorador de proyectos tendremos algo como esto:

AppEngine

Ahora sólo tenemos que compilar el proyecto pulsado en botón verde en forma de "play" y lo compilará y podrás verlo en tu navegador. Si toda ha salido bien podrás entrar a ver tu "Hola Mundo"  entrando en:

http://localhost:8080/

Fácil no?. Ahora sólo queda aprender a trabajar con AppEngine, como si fuera poco. Algo muy importante este manual para trabajar con DataStore.

Categorías Articulos
abr
16

Creando una pantalla de preferencias en Android

Últimamente ando más que liado. Estoy estudiando AppEngine para Java, haciendo un juego para Android y terminando mi proyecto también en Android. Este último lo tengo bastante avanzado y en estos días he estado trabajando en poner una pantalla de preferencias.

Una de las cosas que más me gusta de Android es que te facilita crear muchas de las cosas comunes que necesita una aplicación y para ello suele usar archivos XML. En el caso de las preferencias no iba a ser distinto y en pocos minutos te puedes crear tus preferencias.

Esto tiene dos ventajas:

  1. En poco minutos puedes hacer algo que tardarías horas en diseñar
  2. Las preferencias tienen un aspecto común en todas las aplicaciones de Android. Así un usuario que esté acostumbrado a usar el sistema estará familiarizado con la pantalla

Ahora vamos a por el código. Para realizar una pantalla de preferencias simplemente tienes que crear una nueva Actividad que herede de PreferenceActivity. Desde el método onCreate vamos a invocar un archivo XML que se encuentra en res/xml y que contiene la estructura, claves y objetos de nuestra pantalla de preferencias. El código sería el siguiente:

  1. public class PreferencesFromXml extends PreferenceActivity {
  2.  
  3. @Override
  4. protected void onCreate(Bundle savedInstanceState) {
  5. super.onCreate(savedInstanceState);
  6.  
  7. // Load the preferences from an XML resource
  8. addPreferencesFromResource(R.xml.preferences);
  9. }
  10.  
  11. }

Este código es uno de los ejemplos que viene con el SDK de Google y se encuentra aquí.

Una vez hecho esto simplemente tendremos que rellenar nuestro archivo XML. Para ello lo mejor es fijarse en este ejemplo de Google donde se pueden ver como crear grupos de preferencias, listas, checkbox, etc.

Una vez hecho esto nos queda acceder a los contenidos de las preferencias. Lo mejor es que no nos tenemos que preocupar en ningún momento de almacenar la información en ningún lado, de esto se encarga Android.

Lo primero es poner bien todos los "key" en el XML. Cada objeto tiene un atributo llamado "android:key" que nos servirá para poder acceder a él cuando sea necesario.

Para poder trabajar con las preferencias necesitamos un objeto de tipo SharedPreferences que podemos obtener en nuestra actividad de la siguiente forma:

PreferenceManager.setDefaultValues(this, R.xml.prefer, false);
SharedPreferences p = 
   PreferenceManager.getDefaultSharedPreferences(this); 
p.getString("key", "value_default")

Lo primero que tenemos que poner es como "preferencias por defecto" de nuestra actividad el archivo XML que contiene las preferencias. Luego podremos acceder a las preferencias mediante el "key" y los métodos que nos ofrece el objeto SharedPreferences.

Una forma muy cómda de trabajar y fácil de usar. A continuación una imagen de como están quedando las preferencias de mi programa:

Preferencias en Android

Categorías Android Articulos
ene
08

Compartir la conexión a internet del G1 (Android) con un ordenador con Ubuntu

Desde que tengo el T-Mobile G1 estoy disfrutando con él muchísimo y sobretodo enseñándoselo a mis amigos para presumir, que nunca está de mas. Estoy haciendo muchas cosas con él y el otro día conseguí muy fácilmente compartir la conexión 3G del móvil con mi Asus EeePC con Eeebuntu.

A continuación voy a explicar como hacerlo.

Configuración del móvil con Android

Lo primero es instalar el programa Tetherbot en el G1. Para ello nos bajamos Tetherbot.apk de su página. Para instalarlo simplemente copiamos el archivo a la tarjeta del móvil y usamos el programa AppInstaller (que se encuentra en la Android Market). Recuerda que para instalar aplicaciones fuera de la Android Market tenemos que tener activado "Unknown Sources" de "Settings > Applications".

Luego vamos a "Settings > Applications > Development" y activamos "USB debugging".

Configuración en Ubuntu

Esta parte es un poco más larga, pero nada complicada. Lo primero es que Ubuntu reconozca nuestra móvil. Para ello tenemos que añadir unas reglas muy sencillas que se explican en la web de Android. Crea un nuevo archivo como "root" llamado:

/etc/udev/rules.d/50-android.rules

Si usas Gutsy, Hardy o Intrepid Ibex copia dentro este contenido:

SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", MODE="0666"

Si usas Dapper este:

SUBSYSTEM=="usb_device", SYSFS{idVendor}=="0bb4", MODE="0666"

Una vez hecho esto Ubuntu reconocerá el G1 sin problemas. Para comprobarlo vamos a usar Android Debug Bridge (adb), un programa que es necesario para compartir la conexión a Internet y que forma parte del SDK de Android.

Nos bajamos el SDK de Android para Linux (85 mg). Una vez que lo tengamos lo descomprimimos y entramos en el directorio "tools" desde línea de comandos. Allí tenemos la aplicación "adb". Para probar que todo va bien escribimos:

./adb devices

Si aparecen unos número y letras debajo de "List of devices attached" es que nos reconoce el móvil.

Configuración Firefox

Por último debemos de activar el proxy en Firefox. Para ayudarnos en esta tarea vamos a instalar la extensión de Firefox FoxyProxy, mediante la cual podemos gestionar varios proxy en el navegador.

Una vez instalada la extensión nos aparecerá abajo a la derecha de Firefox información sobre el proxy al que estemos conectado, al principio aparecerá "Deshabilitado". Pulsamos con el botón derecho y vamos a las opciones, pulsando sobre el botón "Añadir nuevo proxy". Nos aparecerá una nueva ventana con varias pestañas:

  • En la primera pestaña ponemos el nombre al proxy, yo he puesto "Proxy G1"

Foxy Proxy G1

  • En la segunda activamos "Configuración manual del proxy" y ponemos como nombre del host "localhost" y puerto "1080". Activamos el check de "¿proxy Socks?" con el "Sock v5".

Foxy Proxy G1

Compartiendo Internet

Una vez hecho esto sólo nos falta compartir Internet. El procedimiento es el siguiente:

  • Vamos al directorio "tools" del SDK de Android y ejecutamos:
./adb forward tcp:1080 tcp:1080 
  • Ejecutamos el programa Tetherbot en nuestro G1 y pulsamos en el botón "Start Socks"
  • Abrimos Firefox y seleccionamos nuestro proxy para el G1 en FoxyProxy

Y si todo ha salido bien deberíamos de estar navegando con la conexión 3G del G1. Ahora sólo queda disfrutarla.

Tampoco era tan difícil ¿no?

Categorías Android Articulos Ubuntu
dic
29

Instalación de Eeebuntu 8.10 en un Asus EeePC

Para quien esté interesado he escrito un post en Geekool sobre como instalar Eeebuntu 8.10 en un Asus EeePC. La nueva versión de Eeebuntu, basada en Intrepid Ibex, ha evolucionado bastante y realmente funciona muy bien sin necesidad de lanzar scripts para configurar los dispositivos.

Instalar Eeebuntu en EeePC

Espero que sirva a alguien.

dic
10

Empezando a programar con Android en Ubuntu - Instalación del plugin de Eclipse

Ya me han pedido varias veces que explique como hacerlo, y creo que es importante empezar desde el principio con estas cosas, así que explicaré como empezar a programar en Android con Ubuntu.

El proceso es bastante sencillo y en poco minutos lo puedes tener todo instalado.

Instalación de Eclipse

Aunque Ubuntu tiene Eclipse dentro de sus repositorios, la versión es la 3.2 que tiene algunos problemas con el plugin de Android. Nosotros vamos a bajar la última versión de la página de Eclipse. La última versión es la 3.4, más conocida como Ganymede y pesa unos 85 MG. Sólo tienes que pulsar donde pone "Eclipse IDE for Java Developers".

Una vez la tengas descargada sólo tienes que descomprimirla y ejecutar el fichero llamado "eclipse" desde consola. No necesitas instalar nada.

Descargando el SDK de Android

Actualmente la versión de Android es la 1.0r2, y la puedes descargar desde la página de Android. Una vez descargada simplemente descomprímela y déjala en un directorio a mano.

Instalando el plugin de Android y configurando Eclipse

Ahora es el momento de abrir Eclipse. Una vez abierto vamos a "Help > Software Updates.... ", entramos en la pestaña "Available Software" y pulsamos en el botón "Add Site...". En una nueva ventana nos pedirá una dirección y pondremos:

https://dl-ssl.google.com/android/eclipse/

Una vez que pulsemos en el botón aceptar, nos aparecerá el plugin en la lista, marcamos el checkbox y pulsamos en el botón "Install".

Android en Eclipse

Una vez termine el proceso reiniciamos eclipse. Ahora nos vamos a "Window > Preferences...", seleccionamos "Android" en el panel de la izquierda y en "SDK Location" ponemos el directorio donde hemos descomprimido el SDK de Android.

Android en Eclipse

Una vez hecho esto ya tenemos nuestro entorno preparado para empezar a programar.

Creando un Hola Mundo

Para ver como funciona vamos a crear nuestro primer programa. Vamos a "New > Android Project". Ahora nos pedirá algunos datos, como el nombre del proyecto, nombre de la actividad, etc. Lo rellenamos y finalizamos.

Android en Eclipse

Una vez pulsemos en el botón "Finish" creará nuestro primer proyecto. Aquí tienes la estructura de un proyecto de Android.

Android en Eclipse

Android en EclipsePara probarlo pulsamos en el botón verde y compilará el proyecto y ejecutará el emulador con nuestro programa.

El emulador tardará un poco en cargar, según el ordenador que tengamos, pero una vez abierto no tenemos que abrirlo más. Cada vez que hagamos un cambio en nuestro programa al pulsar el botón verde compilará y se ejecutará en el emulador que tengamos abierto.

Ya tenemos nuestro "Hola Mundo" funcionando.

Android en Eclipse

Usando el Emulador

El emulador lo podemos ejecutar desde Eclipse como hemos visto, pero también podemos ejecutarlo por nuestra cuenta para, por ejemplo, probar el sistema operativo, instalar programas, etc.

Para ejecutarlo simplemente vamos al directorio del SDK de Android y entramos en el directorio "tools", una vez allí ejecutamos el fichero "emulator". Ya podemos jugar con Android.

Una vez ejecutado, y sólo si lo tenemos ejecutado, podemos usar el programa de línea de comandos "adb" para acceder a los datos del sistema, instalar programas y demás.

Los programas en Android tienen extensión .apk. Para instalar un programa debemos escribir:

adb install programa.apk

Para desinstalar un programa que hemos instalado previamente simplemente tenemos que escribir:

adb shell rm data/app/programa.apk

Con esto ya estamos preparados para empezar a trabajar con Android, esto es sólo el comienzo.

Categorías Android Articulos Ubuntu
nov
25

Si internet te va lento en Linux, prueba con OpenDNS

No se si lo conoceis OpenDNS, yo había oído hablar de él, pero no sabía exactamente que era. OpenDNS me ha salvado la vida, pero.... voy a contar la historia desde el principio.

Logo OpenDNS

Mi hermano me llamó hace un mes y me dijo: "Quiero instalar Linux". Yo normalmente no hago estas cosas, ya que no es sólo instalarlo sino tener que dar soporte durante tiempo indefinido, y eso es algo que no me gusta. Pero, es mi hermano, y no le puedo decir que no a un hermano.

Mi hermano tenía muchos problemas con los virus al usar XP y sabía que con Linux todo iba a ir mejor. Aunque yo le dije que cambiar de sistema operativo era complicado, me dijo que no había problema, que él quería hacerlo.

La instalación fue bien, para una persona que nunca ha instalado un sistema operativo, ni Linux ni Windows, y tener que instalarlo todo por teléfono (ya que mi hermano vive en Zaragoza y yo en Cádiz), no tuvimos problemas. Contra todo pronóstico el único problema fue el sonido. Después de un par de día dimos con el problema, era una tontería.

Luego llegó un problema peor, Internet iba muy lento. Después de buscar por Internet encontré que a alguien le pasaba igual y que cuando puso OpenDNS todo le funcionaba mucho mejor. Para usar OpenDNS simplemente tenemos que cambiar las DNS por: 208.67.222.222 y 208.67.220.220.

Parece que las DNS del proveedor de mi hermano no funcionan bien en Linux, ya que en Windows funcionaban correctamente e Internet iba rápido. Algo que no me explico, pero que es así. Con OpenDNS todo va mejor, y hasta yo la estoy usando ahora mismo y va todo perfectamente.

Pero OpenDNS no es sólo eso. Si te sacas una cuenta, podrás monitorizar tu red con estadísticas y hasta filtrar el contenido, por ejemplo si tienes niños en casa para que no entren en paginas de esas exclusivas para adultos. Sin duda una gran herramienta.

Bueno... esta es mi historia de como un día OpenDNS me ayudó ... y quería compartirla con todos vosotros.

Categorías Articulos Trucos