Formato de fechas en Android


Como en todos los lenguajes de programación siempre nos vamos a encontrar con lo mismo, el formato de fecha para poder adecuarlo a nuestras necesidades, a continuación os pongo una función para poder formatear un String de fecha con un formato a otro String con otro formato de salida:

 

//Convierte fechas de wordpress que vienen en String al formato dd/MM/yyyy
private static String FormatDatetime(String inputText)
{
String nameFunction = “FormatDatetime”;
try
{
//Formatos de Fecha que quiero:
DateFormat _inputFormat = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);
DateFormat _outputFormat = new SimpleDateFormat(“dd/MM/yyyy kk:mm”);

//Convertimos:
_inputFormat.setTimeZone(TimeZone.getTimeZone(“UTC”));
Date parsed = _inputFormat.parse(inputText);
return _outputFormat.format(parsed);

}
catch(Exception ex)
{
Log.w(nameFunction,”#ERROR”, ex);
return “”;
}
}

Problema scroll en Mapview dentro de un ScrollView


Programando en Android, me he encontrado que si tenemos un MapView dentro de un ScrollView el scroll que prevalece es el del componente padre ScrollView, para poder activar el scroll en el MapView, os aporto la siguiente solución:

Crear nueva clase MapViewScrollView:

package com.android.auxiliar;

import android.content.Context;
import android.util.AttributeSet;
import android.view.MotionEvent;

import com.google.android.maps.MapView;

public class MapViewScrollView extends MapView {

public MapViewScrollView(Context context, AttributeSet attrs) {
super(context, attrs);
// TODO Auto-generated constructor stub
}

@Override
public boolean onTouchEvent(MotionEvent ev) {
int action = ev.getAction();
switch (action) {
case MotionEvent.ACTION_DOWN:
// Disallow ScrollView to intercept touch events.
this.getParent().requestDisallowInterceptTouchEvent(true);
break;

case MotionEvent.ACTION_UP:
// Allow ScrollView to intercept touch events.
this.getParent().requestDisallowInterceptTouchEvent(false);
break;
}

// Handle MapView’s touch events.
super.onTouchEvent(ev);
return true;
}

}

 

Después en el layout donde tengamos, sustituímos el componente MapView de google por el nuestro:

<!– Mapa com.google.android.maps.MapView–>
<com.android.auxiliar.MapViewScrollView
android:id=”@+id/mapa”
android:layout_width=”fill_parent”
android:layout_height=”fill_parent”
android:clickable=”true”
android:apiKey=”vuestraKEY”/>

 

Por último desde la Activity solo tenemos que llamar al componente de la siguiente manera:

MapViewScrollView _mapa = = (MapViewScrollView)findViewById(R.id.mapa);

 

Con esto conseguimos que cuando estamos interactuando con el MapView desactive del componente padre ScrollView los desplazamientos en vertical, cuando salimos del MapView podemos comprobar que sí funcionan de nuevo.

 

Encoding UTF-8 Netbeans


Para los que tenéis problemas con la codificación de caracteres con netbeans:
  1. Ir a la ruta donde se encuentre instalado el NetBeans:
    C:\Archivos de programa\NetBeans x.x\etc
  2. Editar el archivo netbeans.conf agregando  “-J-Dfile.encoding=UTF-8″ en la línea de opciones por default del NetBeans (netbeans_default_options). Igual que están el resto de opciones.
  3. Volver a cargar el Netbeans

Enviar Coordenadas manualmente terminal Android


Una vez instalado el plugin para netbeans no tenemos las opciones que teníamos en eclipse para enviar coordenadas, lo podemos hacer manualmente:

Nos vamos a Inicio – ejecutar y escribimos Telnet, nos debería aparecer la consola de windows con el Telnet, ahora debemos escribir open localhost 5554 (este número viene en el emulador de android arriba de todo, normalmente suele ser este), y después escribimos los comandos para enviar nuevas coordenadas.

Ejemplo: geo fix 43.654  -8.43

(Importante escribirlo así con puntos y usando separador un espacio en blanco entre las coordenadas).

Instalación plugin android en netbeans


Si tenemos instalado Netbeans (con el jdk instalado, requisito indispensable para este tutorial, podéis descargarlo en download jdk) podemos descargar el plugin para Android, para ello nos dirigimos a la opción de menú de Tools -> Plugins -> y en la ventana que nos aparece seleccionamos la pestaña Settings, presionaremos el botón Add y nos aparecerá la siguiente ventana:

Una vez en ella debemos cubrir con los siguientes datos:

Name: NBAndroid

URL: http://deadlock.netbeans.org/hudson/job/nbandroid/lastStableBuild/artifact/build/updates/updates.xml

En la pestaña de Available Plugins ahora deberían aparecernos unos nuevos plugins que son: Android y Android Test Runner for NetBeans 7.0+, marcarlos y presionar el botón Install

Una vez se inicia el proceso de Instalación veremos:

Nos aparecerá un aviso de los componentes que no están firmados y bajo nuestra propia responsabilidad seguimos adelante…

Ahora ya podemos crear un nuevo proyecto de android, seguramente nos pida la ruta del SDK de Android (que previamente debemos tener instalado), si nos lo pide nos irá a la siguiente ventana donde solo seleccionamos la ruta en C: de donde lo hayamos instalado con anterioridad al tutorial.

Ahora ya podremos seleccionar la versión de Android que queremos que lleve nuestro proyecto de Android:

Con esto ya deberíamos empezar a trabajar en Netbeans con Android :)

He intentado que el tutorial solo abarque la parte de instalación del plugin, a partir de aquí ya os comentaré en un post futuro si prefiero Eclipse o Netbeans. De primeras ya hay cosas que automatizaba eclipse que Netbeans no hace, definitivamente me quedo con Eclipse, tienes previsualizaciones de los layout, un autocompletar, te hace sugerencias de los paquetes donde está cada cosa, etc

 

simplegmaps Plugin wordpress


En primer lugar debemos descargarnos el plugin de la página oficial de wordpress:

Tenemos que descomprimir el contenido del zip en nuestra carpeta de plugins y después en la parte interna activarlo.

Lo siguientes será agregar el shortcode en nuestra página de ejemplo con vuestros datos.

Y por último solo tendremos que visualizarlo para ver que todo ha ido correctamente.

Solución problemas actualizar Acer Iconia A500 Android 4.0 ICS


Creo que no debo ser el único que ha tenido el problema con las actualizaciones de la tablet Acer Iconia A500, la verdad estoy bastante contento con el terminal, salvo este pequeño problemilla que he solventado de la siguiente manera.
La versión inicial es 3.0.1, la cual no deja que te descargues Iconia Tab Update Enhancement (o al menos a mí no me dejaba), si iba a la parte de ajustes de mi tablet me decía que no tenía ninguna actualización pendiente, cosa que es mentira porque están la 3.1, 3.2 y la 4.0 ICS.
El primer paso es descargar la siguiente ROM: SD_Acer_A500_7.006.03_COM_GEN1.zip, que puedes encontrar por Internet, por ejemplo en el siguiente enlace http://vache-android.com/files/SD_Acer_A500_7.006.03_COM_GEN1.zip
Si tienes una SD tienes que descomprimir en ella el contenido del zip que hemos descargado, es decir copiar update.zip dentro de la SD.
Lo siguiente es meter la SD con update.zip y presionar el botón de encendido de la tablet a la vez que pulsas el botón de menos volumen (el más pegado al botón de encendido). Deberían aparecerte unas letras blancas, ahora solo queda esperar que se instale la nueva ROM. Yo no he perdido ningún dato en el proceso.
Cuando finalice la instalación, lo siguiente es ir a ajustes e instalar todas las actualizaciones nuevas que nos vaya diciendo, seguramente reinicie unas cuantas veces tu tablet. Por último iremos a la página del market nuevo de google:

https://play.google.com/store/apps/details?id=com.FD.updater&feature=search_result&rdid=com.FD.updater&rdot=1

E instalaremos la aplicación nueva para descargar la versión ICS, volvemos a ajustes y podemos ver que ahora sí que detecta que hay la versión 4.0 para descargar.

Nota: después de instalar la ROM, debería aparecernos la versión 3.2 en ajustes de nuestro tablet.

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.