domingo, 12 de enero de 2014

Copia de seguridad de whatsapp

Entra en el Whatsapp; ves a ajustes→ Ajustes de chat→ Guardar conversaciones
(Las cópias automáticas de realizan a las 4:00 de la mañana)

Optimizador de memoria para android


Clean Master es un optimizador de memoria y limpiador para los dispositivos Android.

-Elimina los archivos basura (caché y archivos residuales) que ocupan espacio innecesariamente. Las aplicaciones gradualmente consumen memoria y tiempo de vida útil de los dispositivos cuando los llenan de archivos caché. La aplicación encuentra estos archivos que están consumiendo espacio de almacenamiento y ayuda a eliminarlos.
-Protege tu privacidad eliminando los datos personales como el historial de búsqueda del navegador
-Es un gestor de aplicaciones. Mueve las apps a la tarjeta SD, elimina apps preinstaladas y respalda archivos .apk

Desarrollador: KS Mobile
Versión de Android: Varía según el dispositivo
Tamaño: Varía según el dispositivo
Categoría: Herramientas
Precio: Gratis
Descárgalo en: Google Play

viernes, 10 de enero de 2014

¿Qué es JSON?

JSON para es un formato de datos muy ligero y utiliza la misma sintaxis que javascript. Además tiene la ventaja de que podemos incorporarlo dentro del código javascript sin necesidad de realizar análisis previos.

Sintaxis para los literales de matriz:

var dias = ["Lunes","Martes","Miercoles","Jueves","Viernes","Sabado","Domingo"];

También es posible crear una matriz, utilizando el constructor Array (esto es solo valido para javascript pero no para JSON)

var dias = new Array("Lunes","Martes","Miercoles","Jueves","Viernes","Sabado","Domingo");

el acceso a los valores se realiza indicando el nombre y su posición, teniendo en cuenta que la primera posición de la matriz siempre empieza por 0

alert(dias[0]); //Muestra Lunes
alert(dias[6]); //Muestra Domingo

Los Array no tienen un tipo de datos definido, por tanto pueden contener cualquiera de los tipos posibles.

Literales de objeto

Su finalidad es poder crear un objeto mediante el literal. Su sintaxis:

var libro = {
            "Titulo": "JSON VS XML",
            "autor": "Marty MCFly",
            "paginas" : 260,
            "digital": true
};

Nota: el valor de la última propiedad no lleva coma

se puede acceder al valor de las propiedades de varias maneras:
Nombrando el objeto y utilizando la notación de punto

alert(libro.autor);

o utilizando la notación de corchetes

alert(libro["autor"]);

Literales de objeto y matriz

var libro = [
        {
                "Titulo":"JSON VS XML",
                "autor": "Marty MCFly",
                "paginas" : 260,
                "digital": true
        },
        {
                "Titulo":"Lenguaje Groovy",
                "autor": "Pepe HHLL",
                "paginas" : 120,
                "digital": false
        },
        {
                "Titulo":"Grails. El Santo Grial de Java",
                "autor": "Jason DDFF",
                "paginas" : 210,
                "digital": true
        }
];

Nota: el valor de la última propiedad de cada objeto no lleva coma, así como la última llave

Libros es un array que contiene tres objetos de tipo libro. Y el acceso a las propiedades se realiza de la siguiente manera
alert(libro[2].autor); // Escribe Jason DDFF

Literales de matriz dentro de un objeto

var libro = {
                        "Titulo":"Grails 2.0 Advanced",
                        "autor": [""Marty MCFly","Pepe HHLL","Jason DDFF"],
                        "paginas" : 260,
                        "digital": true
                };

para acceder a 2º autor tendríamos que hacer:
alert(libro.autor[1]); //ya que la matriz empieza por 0

Para convertir este objeto a JSON lo único que hay que hacer es eliminar la variable ya que JSON solo es estructura de datos; el código anterior por lo tanto quedaria como sigue:

{
  "Titulo":"Grails 2.0 Advanced",
  "autor": [""Marty MCFly","Pepe HHLL","Jason DDFF"],
  "paginas" : 260,
  "digital": true
}

si transmitimos esta información y la almacenamos en una variable llamada cad lo único que tendremos es una cadena de texto que para convertirla a objeto necesitaremos la ayuda de la función eval()

var objLibro = eval("(" + cad + ")");

ahora ya tenemos un objeto y por tanto podremos acceder a sus propiedades.

jueves, 9 de enero de 2014

Que puedo vender por Internet?

¿Que vender en Internet? Realmente es una buena pregunta. Hoy en día todo el mundo compra en Internet y el número de tiendas virtuales que venden todo tipos de productos no hace más que ir en aumento. Hay una opción que no es menos interesante y que no requiere prácticamente de ninguna inversión; de hecho no es necesario ni tan siquiera adquirir un dominio de Internet ni un plan de hosting. Me refiero a los programas de afiliados. El marketing de afiliados o programas de afiliación son un acuerdo entre tu y una empresa que vende productos o servicios y que paga por comisión o por clic en un anuncio (banner) que has incrustado en tu página o blog. Es decir todos aquellos clientes que entren en sus Webs a través de los enlaces que pegues en tus paginas o blogs.

Para ello estas empresas crean unos enlaces especiales que contienen un identificador único que queda registrado mediante cookies en la Web de la empresa. Esto debe ser así ya que a un Internauta al que dirijas a un portal que vende algún producto o servicio queda automáticamente registrado como cliente tuyo (normalmente un máximo de 30 dias) y tanto si se realiza la compra inmediatamente como si pasan unos dias hasta que se realice, la venta sera tuya aunque el cliente realice la compra entrando directamente en la Web de la empresa y no a través de tu enlace.

Aquí tienes una empresa con programas de afiliados de todo tipo, algunos de ellos muy interesantes.

sábado, 4 de enero de 2014

Tizen nuevo sistema operativo para moviles de Samsung

Debido a que Samsung uno de los mayores fabricantes de móviles del Mundo es muy dependiente de Android está planteandose dar un salto a "Tizen" un nuevo sistema operativo. Esto le haria ser totalmente independiente de Google ya que Android es propiedad suya.
En los sistemas de código abierto Tizen parece ser la mejor opción ya que ofrece multiventana basada en gestos y un navegador con soporte a HTML5. Esta previsto que pueda funcionar en dispositivos muy diferentes tanto en smatphones como en tablets, ordenadores, navegadores, camaras... este hecho y  que está recibiendo un fuerte impulso de Intel y Samsung hacen preveer que alcanzará una gran popularidad.

https://www.tizen.org

viernes, 3 de enero de 2014

Código de ejemplo jQuery Mobile

Como dije en un post anterior aquí paso un primer ejemplo sencillo de una pagina web para móviles con jQuery Mobile.
A la hora de desarrollar aplicaciones web con jQuery y jQuery Mobile hay que tomar una decisión entre si descargarse las librerías e incluirlas en el proyecto web o cargarlas desde Google Code donde la librería cargará rápidamente debido a que estaremos usando los CDN de Google(Content Delivery Network, Red de entrega de Contenidos),cosa que nos ahorrará un considerable ancho de banda. Además siempre tendremos las últimas actualizaciones disponibles.

El código de ejemplo consta de varias partes como podéis ver:
En la primera dentro de <head> enlazamos las librerias jQuery, jQuery Mobile y css.
En la segunda en "header" estará el encabezado de página donde pueden ubicarse botones, barras de navegación, pestañas etc. En el ejemplo solo hay un titulo entre etiquetas <h1>
En la tercera "content" (donde se ubica el contenido de la página) podemos ver un listview que presenta la información en forma de lista y en el ejemplo que nos ocupa muestra una serie de links.
Y por último en "footer" o pie de página esta la información de copyright; también puede situarse información de autor, de contacto, enlaces relacionados, avisos legales...


<!DOCTYPE html>
<html>
<head>
<title>Ejemplo 1</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script src="http://code.jquery.com/mobile/latest/jquery.mobile.min.js"></script>
<link rel="stylesheet" href="http://code.jquery.com/mobile/latest/jquery.mobile.min.css">
</head>
<body>
<div data-role="page" id="page" data-theme="a">
    <div data-role="header">
        <h1>jQuery Mobile</h1>
    </div>
    <div data-role="content" id="content">
<ul data-role="listview" data-inset="true" data-divider-theme="b">
<li data-role="Buscadores"></li>
<li><a href="http://www.google.es">Google</a></li>
<li><a href="http://www.bing.com">bing</a></li>
<li><a href="http://es.yahoo.com/">yahoo</a></li>
<li><a href="http://www.hispavista.com/">hispavista</a></li>
</ul>
    </div>
    <div data-role="footer">
        <h4>Copyright &copy; 2014</h4>
    </div>
</div>
</body>
</html>

Para ver como queda en el movil o tablet:
http://m.elmejorandroid.com/jquerymobile/codigo1







jueves, 2 de enero de 2014

Como eliminar un blog de blogger

Quizás no tenga mucho que ver con el tema de Android pero creo que de tanto en tanto puede ser interesante dar soluciones a pequeños problemas con los que tu u otros lectores de mi blog pueden encontrarse. Pues bien, eliminar un blog puede ser necesario por múltiples razones: es posible que ya hayas llegado al máximo de 100 blogs y blogger no te deje añadir ni uno más para esta cuenta o que no te interese publicar nada para un determinado blog que has registrado.

Sea como fuere paso a explicar como hacerlo:

Si te fijas cuando entras en http://www.blogger.com/home te saldrá una lista con los blogs que tienes. Eliminar uno es tan simple como desplazarte hasta el blog y hacer clic en el icono que contiene una lista desplegable.

Una vez ahí haces clic en configuración.




















 Después clic en otros.
































Ahora en la parte superior de esta pantalla aparecerá la opción para eliminar el blog.



y listos!

miércoles, 1 de enero de 2014

Where´s My Water? 2


Llega la secuela del más exitoso juego de puzles de Disney basado en la física. Where’s My Water? 2 arranca con tres nuevos escenarios: la cloaca, la fábrica de jabón y la playa. ¡Y todos los puzles son gratis! Quita la tierra para guiar el agua limpia, el agua morada y el vapor y así ayudarás a Swampy y sus amigos.

Elementos clave:
• Juega en más de 100 niveles y desafíos con nuevos gráficos en el universo de los caimanes, junto a Swampy, Allie, Cranky y Mystery Duck!
• ¡Nuevos modos de desafío para volver a jugar en niveles de formas nuevas y explosivas!
• Cava todo lo rápido que puedas y consigue todos los patos que puedas en los niveles Duck Rush.
• Conseguir un triple pato ahora es más fácil, mejor y más divertido gracias a las mejoras de Aspiradora, Gota y Absorbedor. Estas mejoras pueden requerir tarifas adicionales.
• ¡Conéctate a Facebook e intenta ganar a tus amigos en esta aventura!
• ¡Descubre divertidas mecánicas exclusivas de cada personaje!
• ¡Completa logros y gana patos especiales: pato gladiador, pato astronauta, pato hula hula y muchos más!
• ¿Te quedaste atascado en un nivel? ¡Usa pistas para resolver el puzle!

Desarrollador: Disney
Versión de Android: 2.3.3 y versiones superiores
Actualizado: 30 de diciembre 2013
Tamaño: 47MB
Categoría: Puzles y juegos de pensar
Precio: Gratis
Descárgalo en: Google Play

¿Qué es jQuery Mobile?

jQuery Mobile es un framework que se usa para desarrollar aplicaciones Web para móviles y tablets.
Hay que tener en cuenta que para que funcione también tenemos que añadir jQuery que es uno de los frameworks de JavaScript más utilizado en el desarrollo web.
Lo que realmente hace jQuery Mobile es optimizar las funciones nativas de jQuery para conseguir un mejor rendimiento en equipos móviles al tiempo que modifica el código HTML para adaptarlo a dichos dispositivos.
He creído interesante introducir el tema de jQuery Mobile ya que tanto si queréis programar Aplicaciones Phonegap como desarrollar directamente para la Web puede ser muy útil conocer este FrameWork.
En los próximos posts pondré ejemplos con jQuery Mobile.

martes, 31 de diciembre de 2013

Evento ondeviceready phonegap

El evento deviceready se dispara una vez PhoneGap este totalmente iniciado y es muy importante ya que de no tener en cuenta esto se podrían realizar llamadas a funciones Phonegap antes incluso que este listo para usarse.

Para usarlo solo necesitas enlazar una función al evento con document.addEventListener justo después de que el árbol DOM se halla cargado.

<!DOCTYPE html>
<html>
    <head>
        <title>DeviceReady</title>
        <script type="text/javascript" charset="utf-8" src="phonegap-2.9.1.js"></script>
        <script>
            document.addEventListener("deviceready", onDeviceReady, false);
            function onDeviceReady() {
                 alert("La API de Phonegap esta lista para ser usada");
            }
         </script>
    </head>
    <body>
    </body>
</html>