<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Blog Desarrollo - Información para desarrolladores &#187; Android</title>
	<atom:link href="http://blogdesarrollo.com/category/android/feed/" rel="self" type="application/rss+xml" />
	<link>http://blogdesarrollo.com</link>
	<description>Noticias, manuales, recursos, eventos para el desarrollo web.</description>
	<lastBuildDate>Tue, 15 May 2012 12:52:39 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Desarrollar en Android con C#</title>
		<link>http://blogdesarrollo.com/android/2012/05/07/desarrollar-en-android-con-c/</link>
		<comments>http://blogdesarrollo.com/android/2012/05/07/desarrollar-en-android-con-c/#comments</comments>
		<pubDate>Mon, 07 May 2012 14:29:45 +0000</pubDate>
		<dc:creator>alegg</dc:creator>
				<category><![CDATA[Android]]></category>

		<guid isPermaLink="false">http://blogdesarrollo.com/?p=1100</guid>
		<description><![CDATA[Interesante noticia para los desarrolladores en C# y que este interesados en crear app nativas para Android y no quieran saber nada con Java. Url:  http://blog.xamarin.com/2012/05/01/android-in-c-sharp/]]></description>
			<content:encoded><![CDATA[<p>Interesante noticia para los desarrolladores en C# y que este interesados en crear app nativas para Android y no quieran saber nada con Java.</p>
<p>Url:  <a title="Android en C SHarp" href="http://blog.xamarin.com/2012/05/01/android-in-c-sharp/">http://blog.xamarin.com/2012/05/01/android-in-c-sharp/</a></p>
<p><a href="http://blogdesarrollo.com/wp-content/uploads/2012/05/hufpc.jpg"><img class="aligncenter size-full wp-image-1101" title="hufpc" src="http://blogdesarrollo.com/wp-content/uploads/2012/05/hufpc.jpg" alt="" width="477" height="546" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blogdesarrollo.com/android/2012/05/07/desarrollar-en-android-con-c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cómó se hizo Pigeóns Attack con Cell SDK</title>
		<link>http://blogdesarrollo.com/android/2012/03/15/como-se-hizo-pigeons-attack-con-cell-sdk/</link>
		<comments>http://blogdesarrollo.com/android/2012/03/15/como-se-hizo-pigeons-attack-con-cell-sdk/#comments</comments>
		<pubDate>Thu, 15 Mar 2012 13:44:33 +0000</pubDate>
		<dc:creator>alegg</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Frameworks]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://blogdesarrollo.com/?p=1050</guid>
		<description><![CDATA[José Daniel Sánchez Gómez de la empresa syderis.com me envia un interesante documento que explica como se realizado el juego para Móviles Pigeóns Attack utilizando el Cell SDK. Ademas del documento con el tutorial, podremos bajarnos codigo fuente tanto para Andorid, IOS y Windows Phone. Documento PDF Codigo Fuente]]></description>
			<content:encoded><![CDATA[<p>José Daniel Sánchez Gómez de la empresa syderis.com me envia un interesante documento que explica como se realizado el juego para Móviles Pigeóns Attack utilizando el Cell SDK. Ademas del documento con el tutorial, podremos bajarnos codigo fuente tanto para Andorid, IOS y Windows Phone.</p>
<p><a title="PDF" href="http://www.blogdesarrollo.com/adjuntos/cmosehizopigeonsatta_ck.pdf">Documento PDF</a><br />
<a title="Codigo Fuente" href="https://github.com/Syderis/CellSDK-Samples/tree/master/PigeonsAttack/Source">Codigo Fuente</a></p>
<p style="text-align: center;"><a href="http://blogdesarrollo.com/wp-content/uploads/2012/03/pigeon.jpg"><img class="aligncenter size-full wp-image-1051" style="border: 1px solid black;" title="pigeon" src="http://blogdesarrollo.com/wp-content/uploads/2012/03/pigeon.jpg" alt="" width="480" height="292" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blogdesarrollo.com/android/2012/03/15/como-se-hizo-pigeons-attack-con-cell-sdk/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tipos primitivos como byte arrays en java</title>
		<link>http://blogdesarrollo.com/java/2012/03/08/tipos-primitivos-como-byte-arrays-en-java/</link>
		<comments>http://blogdesarrollo.com/java/2012/03/08/tipos-primitivos-como-byte-arrays-en-java/#comments</comments>
		<pubDate>Thu, 08 Mar 2012 16:11:40 +0000</pubDate>
		<dc:creator>alegg</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://blogdesarrollo.com/?p=1044</guid>
		<description><![CDATA[Estos metodos java le pueden ser utiles a alguien que haya tenido el mismo problema que yo. En una app android necesitaba enviar algunos datos int, double, float y convertirlos a byte arrays, para enviarlos como paquetes usando el protocolo UDP. Aca van los metodos para tratar tipos y byte arrays. Enlace Original: http://www.daniweb.com/software-development/java/code/216874 /* [...]]]></description>
			<content:encoded><![CDATA[<p>Estos metodos java le pueden ser utiles a alguien que haya tenido el mismo problema que yo. En una app android necesitaba enviar algunos datos int, double, float y convertirlos a byte arrays, para enviarlos como paquetes usando el protocolo UDP.</p>
<p>Aca van los metodos para tratar tipos y byte arrays.</p>
<p>Enlace Original: <a href="http://www.daniweb.com/software-development/java/code/216874">http://www.daniweb.com/software-development/java/code/216874</a></p>
<pre class="php">/* ========================= */
	/* "primitive type --&gt; byte[] data" Methods */
	/* ========================= */

	public static byte[] toByta(byte data) {
	    return new byte[]{data};
	}

	public static byte[] toByta(byte[] data) {
	    return data;
	}

	/* ========================= */

	public static byte[] toByta(short data) {
	    return new byte[] {
	        (byte)((data &gt;&gt; <img src='http://blogdesarrollo.com/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' /> &amp; 0xff),
	        (byte)((data &gt;&gt; 0) &amp; 0xff),
	    };
	}

	public static byte[] toByta(short[] data) {
	    if (data == null) return null;
	    // ----------
	    byte[] byts = new byte[data.length * 2];
	    for (int i = 0; i &lt; data.length; i++) 	        System.arraycopy(toByta(data[i]), 0, byts, i * 2, 2); 	    return byts; 	} 	/* ========================= */ 	public static byte[] toByta(char data) { 	    return new byte[] { 	        (byte)((data &gt;&gt; <img src='http://blogdesarrollo.com/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' /> &amp; 0xff),
	        (byte)((data &gt;&gt; 0) &amp; 0xff),
	    };
	}

	public static byte[] toByta(char[] data) {
	    if (data == null) return null;
	    // ----------
	    byte[] byts = new byte[data.length * 2];
	    for (int i = 0; i &lt; data.length; i++) 	        System.arraycopy(toByta(data[i]), 0, byts, i * 2, 2); 	    return byts; 	} 	/* ========================= */ 	public static byte[] toByta(int data) { 	    return new byte[] { 	        (byte)((data &gt;&gt; 24) &amp; 0xff),
	        (byte)((data &gt;&gt; 16) &amp; 0xff),
	        (byte)((data &gt;&gt; <img src='http://blogdesarrollo.com/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' /> &amp; 0xff),
	        (byte)((data &gt;&gt; 0) &amp; 0xff),
	    };
	}

	public static byte[] toByta(int[] data) {
	    if (data == null) return null;
	    // ----------
	    byte[] byts = new byte[data.length * 4];
	    for (int i = 0; i &lt; data.length; i++) 	        System.arraycopy(toByta(data[i]), 0, byts, i * 4, 4); 	    return byts; 	} 	/* ========================= */ 	public static byte[] toByta(long data) { 	    return new byte[] { 	        (byte)((data &gt;&gt; 56) &amp; 0xff),
	        (byte)((data &gt;&gt; 48) &amp; 0xff),
	        (byte)((data &gt;&gt; 40) &amp; 0xff),
	        (byte)((data &gt;&gt; 32) &amp; 0xff),
	        (byte)((data &gt;&gt; 24) &amp; 0xff),
	        (byte)((data &gt;&gt; 16) &amp; 0xff),
	        (byte)((data &gt;&gt; <img src='http://blogdesarrollo.com/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' /> &amp; 0xff),
	        (byte)((data &gt;&gt; 0) &amp; 0xff),
	    };
	}

	public static byte[] toByta(long[] data) {
	    if (data == null) return null;
	    // ----------
	    byte[] byts = new byte[data.length * 8];
	    for (int i = 0; i &lt; data.length; i++)
	        System.arraycopy(toByta(data[i]), 0, byts, i * 8, 8);
	    return byts;
	}

	/* ========================= */

	public static byte[] toByta(float data) {
	    return toByta(Float.floatToRawIntBits(data));
	}

	public static byte[] toByta(float[] data) {
	    if (data == null) return null;
	    // ----------
	    byte[] byts = new byte[data.length * 4];
	    for (int i = 0; i &lt; data.length; i++)
	        System.arraycopy(toByta(data[i]), 0, byts, i * 4, 4);
	    return byts;
	}

	/* ========================= */

	public static byte[] toByta(double data) {
	    return toByta(Double.doubleToRawLongBits(data));
	}

	public static byte[] toByta(double[] data) {
	    if (data == null) return null;
	    // ----------
	    byte[] byts = new byte[data.length * 8];
	    for (int i = 0; i &lt; data.length; i++) 	        System.arraycopy(toByta(data[i]), 0, byts, i * 8, 8); 	    return byts; 	} 	/* ========================= */ 	public static byte[] toByta(boolean data) { 	    return new byte[]{(byte)(data ? 0x01 : 0x00)}; // bool -&gt; {1 byte}
	}

	public static byte[] toByta(boolean[] data) {
	    // Advanced Technique: The byte array containts information
	    // about how many boolean values are involved, so the exact
	    // array is returned when later decoded.
	    // ----------
	    if (data == null) return null;
	    // ----------
	    int len = data.length;
	    byte[] lena = toByta(len); // int conversion; length array = lena
	    byte[] byts = new byte[lena.length + (len / <img src='http://blogdesarrollo.com/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' /> + (len % 8 != 0 ? 1 : 0)];
	    // (Above) length-array-length + sets-of-8-booleans +? byte-for-remainder
	    System.arraycopy(lena, 0, byts, 0, lena.length);
	    // ----------
	    // (Below) algorithm by Matthew Cudmore: boolean[] -&gt; bits -&gt; byte[]
	    for (int i = 0, j = lena.length, k = 7; i &lt; data.length; i++) {
	        byts[j] |= (data[i] ? 1 : 0) &lt;&lt; k--;
	        if (k &lt; 0) { j++; k = 7; }
	    }
	    // ----------
	    return byts;
	}

	/* ========================= */

	public static byte[] toByta(String data) {
	    return (data == null) ? null : data.getBytes();
	}

	public static byte[] toByta(String[] data) {
	    // Advanced Technique: Generates an indexed byte array
	    // which contains the array of Strings. The byte array
	    // contains information about the number of Strings and
	    // the length of each String.
	    // ----------
	    if (data == null) return null;
	    // ---------- flags:
	    int totalLength = 0; // Measure length of final byte array
	    int bytesPos = 0; // Used later
	    // ----- arrays:
	    byte[] dLen = toByta(data.length); // byte array of data length
	    totalLength += dLen.length;
	    int[] sLens = new int[data.length]; // String lengths = sLens
	    totalLength += (sLens.length * 4);
	    byte[][] strs = new byte[data.length][]; // array of String bytes
	    // ----- pack strs:
	    for (int i = 0; i &lt; data.length; i++) { 	        if (data[i] != null) { 	            strs[i] = toByta(data[i]); 	            sLens[i] = strs[i].length; 	            totalLength += strs[i].length; 	        } else { 	            sLens[i] = 0; 	            strs[i] = new byte[0]; // prevent null entries 	        } 	    } 	    // ---------- 	    byte[] bytes = new byte[totalLength]; // final array 	    System.arraycopy(dLen, 0, bytes, 0, 4); 	    byte[] bsLens = toByta(sLens); // byte version of String sLens 	    System.arraycopy(bsLens, 0, bytes, 4, bsLens.length); 	    // ----- 	    bytesPos += 4 + bsLens.length; // mark position 	    // ----- 	    for (byte[] sba : strs) { 	        System.arraycopy(sba, 0, bytes, bytesPos, sba.length); 	        bytesPos += sba.length; 	    } 	    // ---------- 	    return bytes; 	} 	/* ========================= */ 	/* "byte[] data --&gt; primitive type" Methods */
	/* ========================= */

	public static byte toByte(byte[] data) {
	    return (data == null || data.length == 0) ? 0x0 : data[0];
	}

	public static byte[] toByteA(byte[] data) {
	    return data;
	}

	/* ========================= */

	public static short toShort(byte[] data) {
	    if (data == null || data.length != 2) return 0x0;
	    // ----------
	    return (short)(
	            (0xff &amp; data[0]) &lt; &lt; 8   |
	            (0xff &amp; data[1]) &lt;&lt; 0
	            );
	}

	public static short[] toShortA(byte[] data) {
	    if (data == null || data.length % 2 != 0) return null;
	    // ----------
	    short[] shts = new short[data.length / 2];
	    for (int i = 0; i &lt; shts.length; i++) {
	        shts[i] = toShort( new byte[] {
	            data[(i*2)],
	            data[(i*2)+1]
	        } );
	    }
	    return shts;
	}

	/* ========================= */

	public static char toChar(byte[] data) {
	    if (data == null || data.length != 2) return 0x0;
	    // ----------
	    return (char)(
	            (0xff &amp; data[0]) &lt;&lt; 8   |
	            (0xff &amp; data[1]) &lt;&lt; 0
	            );
	}

	public static char[] toCharA(byte[] data) {
	    if (data == null || data.length % 2 != 0) return null;
	    // ----------
	    char[] chrs = new char[data.length / 2];
	    for (int i = 0; i &lt; chrs.length; i++) {
	        chrs[i] = toChar( new byte[] {
	            data[(i*2)],
	            data[(i*2)+1],
	        } );
	    }
	    return chrs;
	}

	/* ========================= */

	public static int toInt(byte[] data) {
	    if (data == null || data.length != 4) return 0x0;
	    // ----------
	    return (int)( // NOTE: type cast not necessary for int
	            (0xff &amp; data[0]) &lt;&lt; 24  |
	            (0xff &amp; data[1]) &lt;&lt; 16  |
	            (0xff &amp; data[2]) &lt;&lt; 8   |
	            (0xff &amp; data[3]) &lt;&lt; 0
	            );
	}

	public static int[] toIntA(byte[] data) {
	    if (data == null || data.length % 4 != 0) return null;
	    // ----------
	    int[] ints = new int[data.length / 4];
	    for (int i = 0; i &lt; ints.length; i++)
	        ints[i] = toInt( new byte[] {
	            data[(i*4)],
	            data[(i*4)+1],
	            data[(i*4)+2],
	            data[(i*4)+3],
	        } );
	    return ints;
	}

	/* ========================= */

	public static long toLong(byte[] data) {
	    if (data == null || data.length != <img src='http://blogdesarrollo.com/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' /> return 0x0;
	    // ----------
	    return (long)(
	            // (Below) convert to longs before shift because digits
	            //         are lost with ints beyond the 32-bit limit
	            (long)(0xff &amp; data[0]) &lt;&lt; 56  |
	            (long)(0xff &amp; data[1]) &lt;&lt; 48  |
	            (long)(0xff &amp; data[2]) &lt;&lt; 40  |
	            (long)(0xff &amp; data[3]) &lt;&lt; 32  |
	            (long)(0xff &amp; data[4]) &lt;&lt; 24  |
	            (long)(0xff &amp; data[5]) &lt;&lt; 16  |
	            (long)(0xff &amp; data[6]) &lt;&lt; 8   |
	            (long)(0xff &amp; data[7]) &lt;&lt; 0
	            );
	}

	public static long[] toLongA(byte[] data) {
	    if (data == null || data.length % 8 != 0) return null;
	    // ----------
	    long[] lngs = new long[data.length / 8];
	    for (int i = 0; i &lt; lngs.length; i++) {
	        lngs[i] = toLong( new byte[] {
	            data[(i*8)],
	            data[(i*8)+1],
	            data[(i*8)+2],
	            data[(i*8)+3],
	            data[(i*8)+4],
	            data[(i*8)+5],
	            data[(i*8)+6],
	            data[(i*8)+7],
	        } );
	    }
	    return lngs;
	}

	/* ========================= */

	public static float toFloat(byte[] data) {
	    if (data == null || data.length != 4) return 0x0;
	    // ---------- simple:
	    return Float.intBitsToFloat(toInt(data));
	}

	public static float[] toFloatA(byte[] data) {
	    if (data == null || data.length % 4 != 0) return null;
	    // ----------
	    float[] flts = new float[data.length / 4];
	    for (int i = 0; i &lt; flts.length; i++) {
	        flts[i] = toFloat( new byte[] {
	            data[(i*4)],
	            data[(i*4)+1],
	            data[(i*4)+2],
	            data[(i*4)+3],
	        } );
	    }
	    return flts;
	}

	/* ========================= */

	public static double toDouble(byte[] data) {
	    if (data == null || data.length != <img src='http://blogdesarrollo.com/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' /> return 0x0;
	    // ---------- simple:
	    return Double.longBitsToDouble(toLong(data));
	}

	public static double[] toDoubleA(byte[] data) {
	    if (data == null) return null;
	    // ----------
	    if (data.length % 8 != 0) return null;
	    double[] dbls = new double[data.length / 8];
	    for (int i = 0; i &lt; dbls.length; i++) {
	        dbls[i] = toDouble( new byte[] {
	            data[(i*8)],
	            data[(i*8)+1],
	            data[(i*8)+2],
	            data[(i*8)+3],
	            data[(i*8)+4],
	            data[(i*8)+5],
	            data[(i*8)+6],
	            data[(i*8)+7],
	        } );
	    }
	    return dbls;
	}

	/* ========================= */

	public static boolean toBoolean(byte[] data) {
	    return (data == null || data.length == 0) ? false : data[0] != 0x00;
	}

	public static boolean[] toBooleanA(byte[] data) {
	    // Advanced Technique: Extract the boolean array's length
	    // from the first four bytes in the char array, and then
	    // read the boolean array.
	    // ----------
	    if (data == null || data.length &lt; 4) return null;
	    // ----------
	    int len = toInt(new byte[]{data[0], data[1], data[2], data[3]});
	    boolean[] bools = new boolean[len];
	    // ----- pack bools:
	    for (int i = 0, j = 4, k = 7; i &lt; bools.length; i++) { 	        bools[i] = ((data[j] &gt;&gt; k--) &amp; 0x01) == 1;
	        if (k &lt; 0) { j++; k = 7; }
	    }
	    // ----------
	    return bools;
	}

	/* ========================= */

	public static String toString(byte[] data) {
	    return (data == null) ? null : new String(data);
	}

	public static String[] toStringA(byte[] data) {
	    // Advanced Technique: Extract the String array's length
	    // from the first four bytes in the char array, and then
	    // read the int array denoting the String lengths, and
	    // then read the Strings.
	    // ----------
	    if (data == null || data.length &lt; 4) return null;
	    // ----------
	    byte[] bBuff = new byte[4]; // Buffer
	    // -----
	    System.arraycopy(data, 0, bBuff, 0, 4);
	    int saLen = toInt(bBuff);
	    if (data.length &lt; (4 + (saLen * 4))) return null;
	    // -----
	    bBuff = new byte[saLen * 4];
	    System.arraycopy(data, 4, bBuff, 0, bBuff.length);
	    int[] sLens = toIntA(bBuff);
	    if (sLens == null) return null;
	    // ----------
	    String[] strs = new String[saLen];
	    for (int i = 0, dataPos = 4 + (saLen * 4); i &lt; saLen; i++) { 	        if (sLens[i] &gt; 0) {
	            if (data.length &gt;= (dataPos + sLens[i])) {
	                bBuff = new byte[sLens[i]];
	                System.arraycopy(data, dataPos, bBuff, 0, sLens[i]);
	                dataPos += sLens[i];
	                strs[i] = toString(bBuff);
	            } else return null;
	        }
	    }
	    // ----------
	    return strs;
	}</pre>
]]></content:encoded>
			<wfw:commentRss>http://blogdesarrollo.com/java/2012/03/08/tipos-primitivos-como-byte-arrays-en-java/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RIM quiere atraer a los desarrolladores de Android</title>
		<link>http://blogdesarrollo.com/android/2012/02/13/rim-quiere-atraer-a-los-desarrolladores-de-android/</link>
		<comments>http://blogdesarrollo.com/android/2012/02/13/rim-quiere-atraer-a-los-desarrolladores-de-android/#comments</comments>
		<pubDate>Mon, 13 Feb 2012 21:28:20 +0000</pubDate>
		<dc:creator>alegg</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Blackberry]]></category>

		<guid isPermaLink="false">http://blogdesarrollo.com/?p=1019</guid>
		<description><![CDATA[Me entero un poco tarde en existe un concurso creado por RIM para convertir nuestras app android en su plataforma. Lamentablemente termina hoy&#8230;pero para presentarme creo que necesitaria varios meses, ya que no veo nada sencillo convertir una app android medianamente complicada en una app RIM, teniendo en cuenta por ejemplo, la diferencias al momento [...]]]></description>
			<content:encoded><![CDATA[<p>Me entero un poco tarde en existe un concurso creado por RIM para <a title="Convertir a RIM" href="http://devs.ticbeat.com/rim-quiere-atraer-desarrolladores-android/?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+rwwes+%28TICbeat%29&amp;utm_content=Google+Reader">convertir nuestras app android en su plataforma</a>. Lamentablemente termina hoy&#8230;pero para presentarme creo que necesitaria varios meses, ya que no veo nada sencillo convertir una app android medianamente complicada en una app RIM, teniendo en cuenta por ejemplo, la diferencias al momento de armar las pantallas y los controles en cada plataforma.</p>
<p>Igualmente para lo que se tengan muuca fe y crean que en un dia puede lograr esta proeza, les dejo un link con <a title="informacion desde el sitio de Blackberry" href="https://bdsc.webapps.blackberry.com/android/tool/">informacion desde el sitio de Blackberry</a>.</p>
<p><a href="http://blogdesarrollo.com/wp-content/uploads/2012/02/android-logito.jpg"><img class="aligncenter size-full wp-image-1020" title="android-logito" src="http://blogdesarrollo.com/wp-content/uploads/2012/02/android-logito.jpg" alt="" width="130" height="78" />  </a></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://blogdesarrollo.com/android/2012/02/13/rim-quiere-atraer-a-los-desarrolladores-de-android/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Guia de diseño para Android</title>
		<link>http://blogdesarrollo.com/android/2012/01/13/guia-de-diseno-para-android/</link>
		<comments>http://blogdesarrollo.com/android/2012/01/13/guia-de-diseno-para-android/#comments</comments>
		<pubDate>Fri, 13 Jan 2012 13:18:41 +0000</pubDate>
		<dc:creator>alegg</dc:creator>
				<category><![CDATA[Android]]></category>

		<guid isPermaLink="false">http://blogdesarrollo.com/?p=999</guid>
		<description><![CDATA[Después de una larga ausencia&#8230;debido a una mezcla de exceso de trabajo, vacaciones y decidia vuelvo a publicar en el blog.  Es muy interesante esta Guia de Diseño par Android que han publicado en Google.  Todos los que desarrollan para Android saben que el diseño para android se ha vuelto un poco caótico, debido a [...]]]></description>
			<content:encoded><![CDATA[<p>Después de una larga ausencia&#8230;debido a una mezcla de exceso de trabajo, vacaciones y decidia vuelvo a publicar en el blog.  Es muy interesante esta <a title="Guia de Diseño" href="http://developer.android.com/design/index.html">Guia de Diseño par Android</a> que han publicado en Google.  Todos los que desarrollan para Android saben que el diseño para android se ha vuelto un poco caótico, debido a las diferentes pantallas y versiones que hay en el mercado, asi que esta guía nos puede ayudar adefinir el estilo de nuestras apps android.</p>
<p>&nbsp;</p>
<p><a href="http://blogdesarrollo.com/wp-content/uploads/2012/01/guiaandroiddesign.jpg"><img class="aligncenter size-full wp-image-1000" title="guiaandroiddesign" src="http://blogdesarrollo.com/wp-content/uploads/2012/01/guiaandroiddesign.jpg" alt="" width="480" height="381" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blogdesarrollo.com/android/2012/01/13/guia-de-diseno-para-android/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>XML vs JSON para mostrar información en dispositivos moviles</title>
		<link>http://blogdesarrollo.com/android/2011/04/14/xml-vs-json-para-mostrar-informacion-en-dispositivos-moviles/</link>
		<comments>http://blogdesarrollo.com/android/2011/04/14/xml-vs-json-para-mostrar-informacion-en-dispositivos-moviles/#comments</comments>
		<pubDate>Thu, 14 Apr 2011 13:02:01 +0000</pubDate>
		<dc:creator>alegg</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Blackberry]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[JSON]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://blogdesarrollo.com/?p=860</guid>
		<description><![CDATA[Desde hace unos meses estoy desarrollando dos  aplicaciones Android, que hacen un uso intensivo de XML, generado en distintos servidores web.  En principio, al ser un requerimiento del cliente,  no pense en otras alternativas para parsear la informacion y ademas la app funcionaba muy bien (en mi punto de vista&#8230;). Al testear la app con [...]]]></description>
			<content:encoded><![CDATA[<p>Desde hace unos meses estoy desarrollando dos  aplicaciones Android, que hacen un uso intensivo de XML, generado en distintos servidores web.  En principio, al ser un requerimiento del cliente,  no pense en otras alternativas para parsear la informacion y ademas la app funcionaba muy bien (en mi punto de vista&#8230;).</p>
<p>Al testear la app con el cliente, me hizo notar que al momento de mostrar el XML más pesado, se tardaban unos segundos, lo cual no es nada bueno para una app movil.</p>
<p>Investigando un poco sobre el tema, di con este resumen escrito por <a href="http://knol.google.com/k/juan-de-dios-maldonado-s%C3%A1nchez/-/yf7xkfmg7vie/0#">Juan de Dios Maldonado Sánchez</a> de una conferencia dada por <a title="Conferencia Android I/O" href="http://knol.google.com/k/android-programando-para-la-vida-de-la-bater%C3%ADa#">Jeffrey Sharkey en Google I/O 2009</a> en donde explica los distintos usos de la batería que hace nuestro telefono, dependiendo de la tarea.</p>
<p>En esa misma conferencia, se muestra una comparación entre el uso de <strong>XML </strong>vs el uso de <strong>JSON</strong>, que se puede ver en este cuadro:</p>
<p>&nbsp;</p>
<p><a href="http://blogdesarrollo.com/wp-content/uploads/2011/04/analizadores.png"><img class="size-full wp-image-862 aligncenter" style="border: 1px solid black;" title="XML y JSON" src="http://blogdesarrollo.com/wp-content/uploads/2011/04/analizadores.png" alt="" width="586" height="338" /></a></p>
<p>Evidentemente JSON es mas rapido, especialmente si los XML son muy grandes, cosa que he podido testear personalmente.</p>
<p>Con toda esta info,  me encuentro ahora testeando las app con JSON y para hacer eso, encontré este articulo de david walsh que cuenta como utilizo<a title="Javascript para convertir los XML  a JSON" href="http://www.neurosoftware.ro/programming-blog/facebook-web-design/web-resources/convert-xml-to-json-with-javascript-2/"> Javascript para convertir los XML  a JSON</a>.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://blogdesarrollo.com/android/2011/04/14/xml-vs-json-para-mostrar-informacion-en-dispositivos-moviles/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Ya se puede usar Perl para programar en Android</title>
		<link>http://blogdesarrollo.com/android/2009/08/25/ya-se-puede-usar-perl-para-programar-en-android/</link>
		<comments>http://blogdesarrollo.com/android/2009/08/25/ya-se-puede-usar-perl-para-programar-en-android/#comments</comments>
		<pubDate>Tue, 25 Aug 2009 13:41:47 +0000</pubDate>
		<dc:creator>alegg</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Perl]]></category>

		<guid isPermaLink="false">http://blogdesarrollo.com/?p=439</guid>
		<description><![CDATA[El sistema operativo para móviles de Google, Android, ya soporta el viejo y querido Perl. Aqui un hola mundo. use Android; my $a = Android->new(); $a->makeToast("Hello, Android!"); Noticia completa en inglés: http://www.h-online.com/open/Android-learns-Perl&#8211;/news/114069]]></description>
			<content:encoded><![CDATA[<p>El sistema operativo para móviles de Google, Android, ya soporta el viejo y querido Perl.</p>
<p>Aqui un hola mundo.</p>
<pre name="code" class="php">
use Android;
my $a = Android->new();
$a->makeToast("Hello, Android!");
</pre>
<p>Noticia completa en inglés: <a href="http://www.h-online.com/open/Android-learns-Perl--/news/114069" target="_self">http://www.h-online.com/open/Android-learns-Perl&#8211;/news/114069</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blogdesarrollo.com/android/2009/08/25/ya-se-puede-usar-perl-para-programar-en-android/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Android 2.0 casi entre nosotros</title>
		<link>http://blogdesarrollo.com/android/2009/07/28/android-20-casi-entre-nosotros/</link>
		<comments>http://blogdesarrollo.com/android/2009/07/28/android-20-casi-entre-nosotros/#comments</comments>
		<pubDate>Tue, 28 Jul 2009 13:50:44 +0000</pubDate>
		<dc:creator>alegg</dc:creator>
				<category><![CDATA[Android]]></category>

		<guid isPermaLink="false">http://blogdesarrollo.com/?p=334</guid>
		<description><![CDATA[Cuando estaba terminado de leer sobre la API actual, ya google lanza Android 2.0 (Donut). Mas info en TechieSphere, en android-spa.com y en and.roid.es]]></description>
			<content:encoded><![CDATA[<p>Cuando estaba terminado de leer sobre la API actual, ya google lanza Android 2.0 (Donut).</p>
<p>Mas info en <a href="http://techiesphere.com/2009/07/android-2-0-preview-highlights-multi-touch-support-and-other-enhancements/" target="_blank">TechieSphere</a>, en <a href="http://www.android-spa.com/mostrarNoticia.php?id=585" target="_blank">android-spa.com</a> y en <a href="http://and.roid.es/donut-20-ya-esta-aqui.html" target="_blank">and.roid.es</a></p>
<p><img class="aligncenter size-full wp-image-335" title="android-logito" src="http://blogdesarrollo.com/wp-content/uploads/2009/07/android-logito.jpg" alt="android-logito" width="130" height="78" /></p>
]]></content:encoded>
			<wfw:commentRss>http://blogdesarrollo.com/android/2009/07/28/android-20-casi-entre-nosotros/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Introduccion a la programación con Android</title>
		<link>http://blogdesarrollo.com/android/2009/06/10/introduccion-a-la-programacion-con-android/</link>
		<comments>http://blogdesarrollo.com/android/2009/06/10/introduccion-a-la-programacion-con-android/#comments</comments>
		<pubDate>Wed, 10 Jun 2009 17:38:56 +0000</pubDate>
		<dc:creator>alegg</dc:creator>
				<category><![CDATA[Android]]></category>

		<guid isPermaLink="false">http://blogdesarrollo.com/?p=203</guid>
		<description><![CDATA[Les quiero recomendar a todos los que tienen ganas de comenzar a programar para los telefonos móviles que corren sobre android o simplemente quieran saber de que se trata, una serie de articulos escritos por Javier Cancela, en su blog. Estos articulos me han servido mucho ya que explican bien desde el principio]]></description>
			<content:encoded><![CDATA[<p>Les quiero recomendar a todos los que tienen ganas de comenzar a programar para los telefonos móviles que corren sobre <a href="http://es.wikipedia.org/wiki/Android" target="_blank">android</a> o simplemente quieran saber de que se trata, una serie de articulos escritos por Javier Cancela, <a href="http://javiercancela.com/2008/04/07/primeros-pasos-programando-con-android/" target="_blank">en su blog.</a></p>
<p>Estos articulos me han servido mucho ya que explican bien desde el principio</p>
]]></content:encoded>
			<wfw:commentRss>http://blogdesarrollo.com/android/2009/06/10/introduccion-a-la-programacion-con-android/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Android sigue ganando apoyo</title>
		<link>http://blogdesarrollo.com/android/2009/05/13/android-sigue-ganando-apoyo/</link>
		<comments>http://blogdesarrollo.com/android/2009/05/13/android-sigue-ganando-apoyo/#comments</comments>
		<pubDate>Wed, 13 May 2009 14:30:09 +0000</pubDate>
		<dc:creator>alegg</dc:creator>
				<category><![CDATA[Android]]></category>

		<guid isPermaLink="false">http://blogdesarrollo.com/?p=179</guid>
		<description><![CDATA[Google auguró un gran año para Android este 2009 y los estudios de mercado parecen darle la razón. Según las estimaciones de Strategy Analytics, su sistema operativo sigue ganando apoyo en el sector de la telefonía móvil y se prevé que este año se vendan ocho millones de móviles con el programa, 10 veces más [...]]]></description>
			<content:encoded><![CDATA[<p>Google auguró un gran año para Android este 2009 y los estudios de mercado parecen darle la razón. Según las estimaciones de Strategy Analytics, su sistema operativo sigue ganando apoyo en el sector de la telefonía móvil y se prevé que este año se vendan ocho millones de móviles con el programa, 10 veces más que hace un año.</p>
<p>El Android llegó a Estados Unidos en el segundo semestre de 2008 con el lanzamiento de Dream y poco a poco ha ido creciendo, con otros lanzamientos como el HTC Magic. Poco a poco, los principales vendedores y desarrolladores de móviles, excepto Nokia, han dicho que lo van a usar.</p>
<p>&#8220;Android está ahora en buena posición para convertirse en un actor principal en los &#8216;smartphones&#8217; en los próximos dos a tres años&#8221;, ha opinado el director de la consultora Strategy Analytics, Neil Mawston. Ha apuntado que a las compañías como T-Mobile y Vodafone les interesa Android, gracias a su coste relativamente bajo, su estructura de código semi-abierto y el apoyo de Google a los servicios.</p>
<p>Con todo, a pesar de un pronóstico de un crecimiento de 10 veces para el 2009, con ocho millones de móviles vendidos, Android aún estaría muy por detrás de los líderes del mercado: Symbian (Nokia, Sony Ericsson, Motorola&#8230;), Research in Motion (Blackberry), Microsoft (Windows Mobile) o Apple (iPhone).</p>
<p>Se espera que el mercado de móviles crezca entre el 10 y el 20 por ciento este año. El año pasado se vendieron 152 millones de móviles. Alrededor de la mitad de estos usaban el sistema operativo Symbian, mientras que RIM vendió 23,5 millones, Microsoft, 20 millones, y Apple, 13,7 millones, según Strategy Analytics.</p>
]]></content:encoded>
			<wfw:commentRss>http://blogdesarrollo.com/android/2009/05/13/android-sigue-ganando-apoyo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

