tus camisetas frikis en camisetafriki.com

Archive

Archive for the ‘Android’ Category

Horarios de trenes FEVE para Android

January 21st, 2012 No comments

Hace unos días publiqué otra aplicación hecha por mi en el Android Market, es muy sencilla y la hice en 3 o 4 días y sirve para comprobar los horarios de los trenes de FEVE. La hice más que nada para mi, que cuando voy a Santander algún fin de semana o en vacaciones, me muevo con trenes de FEVE entre Astillero y Santander, y echaba de menos una aplicación Android para consultar los horarios, ya que FEVE no dispone de versión móvil de su web ni de aplicación para estas consultas.

FEVE app Android

La aplicación en sí no tiene misterio, presenta un formulario con dos campos de texto con autocompletar y botones para invertir el recorrido o consultar el horario entre las estaciones elegidas. Accedo a la web de feve.es para obtener las estaciones y guardarlas en la aplicación parseando la web con la librería Jsoup, luego las empleo para los cuadros de autocompletar y, del mismo modo, cuando el usuario hace click en consultar, llamo a la página web y parseo la tabla de resultados para mostrarla en un listado.

Si veo que la usa bastante gente planeo ponerle una opción para meter los recorridos en favoritos y otra para establecer una alarma que te avise de que queda poco tiempo para que pase el tren que quieras que te avise.

Puedes descargarla haciendo click en el siguiente enlace o escaneando el código QR:

Categories: Android Tags:

Review Galaxy Nexus

January 16th, 2012 2 comments

Galaxy Nexus es el nuevo buque insignia de Google y ha llegado a España recientemente de la mano de Vodafone en exclusiva hasta Marzo.

Cómo no podía a esperar para tenerlo libre busqué en internet sitios donde comprarlo libre y tras ver unos precios desorbitados, encontré el terminal en la web de Amazon de Alemania a un precio más o menos asequible.

He de decir que estoy impresionado con el terminal. Tiene un acabado precioso, sin botones físicos en la parte delantera y una superficie ligeramente curvada. Es realmente fino y se coge con facilidad.

Además, trae la última versión Android, el sistema operativo de Google, Ice Cream Sandwich, el cual trae un montón de mejoras como el desbloqueo facial, un completo rediseño de la interfaz entre otras muchas cosas más.

Puedes leer una review completa que hice para el blog 120linux pero si lo que quieres es comprarlo ya mismo, me haces un favor si lo compras con el link de abajo :) Realmente vale la pena este teléfono que no deja de soprenderme cada día (ahora mismo lleva 51 horas funcionando sin cargar)

Categories: Android, Tecnología Tags: ,

Algunas configuraciones de dispositivos para probar layouts en Android con ADT

March 31st, 2011 2 comments

Esto puede ser útil a las personas que estén desarrollando aplicaciones para Android.

He creado algunas configuraciones para probar los layouts con la versión 0.10 del plugin ADT para Eclipse, para ver como queda la interfaz de usuario con distintas resoluciones de pantalla. Las he creado para el EVO 4G, Galaxy TAB de 7 pulgadas, de 8.9 pulgadas y para el motorola Xoom de 10.1 pulgadas, además, he creado una nueva para el Nexus One.

Las puedes ver haciendo clic en la imagen siguiente

ADT Device configurations

Categories: Android, Programacion Tags:

Megacomparativa 8 tabletas

March 14th, 2011 No comments

Cogiendo un par de imágenes de skattertech.com he confeccionado esta lista con los 8 tablets principales que están por salir:
-Samsung Galaxy Tab 10.1
-Apple iPad 2
-HP Touchbook
-LG G-Slate
-Blackberry Playbook
-Dell Streak
-iPad
-Motorola Xoom

Categories: Android, Tecnología Tags: ,

Mock Locations, mi primera aplicación Android

March 8th, 2011 2 comments

Al final he conseguido aprender Android y desarrollar mi propia aplicación para lanzar en la tienda de aplicaciones, cuya finalidad es poder probar otras aplicaciones que necesiten geolocalización, ya que lo principal función de mi herramienta es simular la posición del GPS para que las aplicaciones crean que estás donde tu quieras, y no sólo posiciones estáticas, sino que además puedes simular una ruta que cambie de posición a lo largo de sus puntos a intervalos, y éstas rutas pueden ser tanto buscadas al momento empleando el cálculo de rutas de Google Maps como guardando archivos KML en la tarjeta de memoria y cargándolas desde la aplicación.

Algunos malhechores también pueden usarla para engañar a foursquare o Google Places haciéndoles creer que están en otro lugar o engañar a la pareja/familia si éstos comparten su ubicación por Google Latitude ;)

La aplicación tiene anuncios de AdMob pero planeo sacar una versión de pago sin anuncios a ver que tal se da, pero al ser una aplicación más pensada para desarrolladores no tiene mucho público objetivo.

Os dejo una captura y espero que la disfrutéis!

INSTALAR

mock locations screenshot

Categories: Android Tags:

Nokia se pasa a Android, finalmente

December 28th, 2010 No comments


Pues si, al final los directivos de Nokia, ante los pésimos resultados que ha tenido este año, en el cual Apple y Android se han hecho con la mayor parte del mercado de sistemas operativos móviles y que además, tras la renuncia de varios directivos y que además ha tenido que recortar 800 puestos de trabajo en Finlandia, se han decantado por cambiar de sistema operativo y abandonar MeeGo en virtud de Android, lo que supondrá un ahorro en desarrollo de un 30% y que permitiría a Nokia disfrutar de un mercado de aplicaciones ya maduro y bastante poblado y casi inmediatamente, para ello, Nokia ha lanzado un comunicado de prensa ayer, en el que anunciaba por sorpresa el primer terminal con Android, y para no ser menos, ya trae de fábrica Gingerbread (Android 2.3) como podemos ver en el siguiente vídeo:

Esperamos que con este movimiento, Nokia recupere parte del mercado en terminales de gama alta ya que como sabemos, son los mejores haciendo hardware pero se estaban quedando atrás en cuanto a software.
Bien por Nokia!

Actualización: Bueno como os imaginaríais, esto era una inocentada del 28 de diciembre, pero esperemos que suceda algún día!

Categories: Android, Tecnología Tags:

Android dev: Abrir Google Navigation mediante Intent

December 23rd, 2010 4 comments

Un snippet muy práctico, para abrir Google Navigation con el destino que nosotros queramos, desde nuestra ubicación actual, con indicaciones habladas, vista oblicua e información del tráfico, mediante un intent:

1
2
3
4
5
//point es del tipo GeoPoint
String location = (point.getLatitudeE6()/1E6)+","+(point.getLongitudeE6()/1E6);
Intent i = new Intent(Intent.ACTION_VIEW,
Uri.parse("google.navigation:q="+location));
context.startActivity(i);

Google Navigation

Categories: Android, Programacion Tags: ,

Esto con Android no pasa!

December 14th, 2010 No comments

Esto con Android no pasa
Miniactualización!

He creado en Facebook una página donde voy colgando enlaces a noticias, aplicaciones, imágenes divertidas, etc. sobre móviles en general y Android en concreto. La coña surgió como siempre comparando las características de iPhone y las del Nexus One, y de vez en cuando salía la frase “esto con Android no pasa!” refiriéndome a determinadas cosas que pasan en iOS y no pasan en Android.

La puedes encontrar aquí:
Esto con Android no pasa

Categories: Android, Tecnología Tags: ,

Los programadores de Android son unos cachondos

October 29th, 2010 1 comment

android death star
No hay mas que ver la cantidad de detalles curiosos de la documentación oficial, como por ejemplo, constantes definidas con la gravedad de los planetas, la estrella de la muerte y la isla de Lost (que no podía ser otra que 4.815162342).

Además, he metido la gamba con una libreria y al reconstruir el proyecto me sale el siguiente mensaje intimidatorio, que indica que algo no estoy haciendo bien, y que si es algo intencionado, la aplicación fallará y seré culpado, acusado y me llevará al dolor, sufrimiento, pena y lamento…

Attempt to include a core class (java.* or javax.*) in something other
than a core library. It is likely that you have attempted to include
in an application the core library (or a part thereof) from a desktop
virtual machine. This will most assuredly not work. At a minimum, it
jeopardizes the compatibility of your app
with future versions of the
platform. It is also often of questionable legality.

If you really intend to build a core library -- which is only
appropriate as part of creating a full virtual machine distribution,
as opposed to compiling an application -- then use the
"--core-library" option to suppress this error message.

If you go ahead and use "--core-library" but are in fact building an
application, then be forewarned that your application will still fail
to build or run, at some point. Please be prepared for angry customers
who find, for example, that your application ceases to function once
they upgrade their operating system. You will be to blame for this
problem.

If you are legitimately using some code that happens to be in a core
package, then the easiest safe alternative you have is to repackage
that code. That is, move the classes in question into your own package
namespace. This means that they will never be in conflict with core
system classes. If you find that you cannot do this, then that is an
indication that the path you are on will ultimately lead to pain,
suffering, grief, and lamentation.

Categories: Android, Freaks, Programacion Tags: ,

Android: Formas de manejar un evento

August 24th, 2010 1 comment

Escribo esto casi como un recordatorio de las posibles formas de manejar eventos en Android, pongo por caso cómo manejar los eventos OnClick de un botón:

Inline:

1
2
3
4
5
this.btnCalcular.setOnClickListener(new View.OnClickListener() {
      public void onClick(View v) {
       	calcularRuta();
      }
});

Con un delegado:

1
2
3
4
5
6
7
8
9
private OnClickListener btnMyLocation_OnClick = new OnClickListener() {		
	@Override
	public void onClick(View v) {
		// Desde aquí no tenemos acceso a la clase 
		// así que podemos llamar a una método de 
		// la clase para modificarla			
	}
};
this.btnMyLocation.setOnClickListener(this.btnMyLocation_OnClick);

Implementando OnClickListener como una interfaz (esta opción no permitiría manejar eventos OnClick diferenetes salvo que hagamos un switch del View en la función OnClick para identificarlo):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class ExampleActivity extends Activity implements OnClickListener {
    protected void onCreate(Bundle savedValues) {
        ...
        Button button = (Button)findViewById(R.id.corky);
        button.setOnClickListener(this);
    }
 
    // Implement the OnClickListener callback
    public void onClick(View v) {
      switch(v.getId())
      {
          case(R.id.corky):
          ...
      }
    }
    ...
}

En el XML del layout:

1
2
3
4
<Button
android:onClick="metodo"
... 
/>
1
2
3
4
public void metodo(View v)
{
   //hacer algo
}

(fuente: http://developer.android.com/guide/topics/ui/ui-events.html)

Categories: Android, Programacion Tags: