El lamentable estado de las herramientas de desarrollo Android

Advertencia: si le tienes mucho cariño a Google, mejor que no sigas leyendo. Si desarrollas Apps como es mi caso (para iOS y Android) y no tomas como dogma de fe todo lo que dice Google (ni Apple, ni Microsoft, ni nadie), adelante.

Segunda advertencia: leed el update de abajo del todo, por favor. Para que os hagáis una idea de lo grave que es este asunto…

Ahora mismo estamos en pleno Google I/O, la conferencia para desarrolladores de Google. Se están presentando muchas novedades de consumo, lo que me parecen muy bien. Hay incluso un nuevo lenguaje visual llamado Material (que, por desgracia no veremos mas que en los Nexus, ya que los fabricantes se lo van a cargar; y aún así habrá que ver en qué Nexus y cuándo).

Todo muy bien, pero ¿qué pasa con las herramientas de verdad para desarrolladores?

Estas herramientas, no nos engañemos, son: el compilador, el lenguaje y el IDE. Eso es lo que usamos el 90% del tiempo mientras desarrollamos Apps. Pues parece que, en 2014, todo sigue como en 2013. En la edad de la piedra. En el más absoluto desprecio de Google hacia sus desarrolladores.

Sí señores: desprecio. No es de recibo las herramientas que proporciona Google, insisto, en 2014. Revisemos.

El lenguaje de programación

Es Java. Ni creado ni controlado por Google. Conste que no odio Java (he invertido mucho tiempo en aprenderlo y certificarme como para no tomarle cariño). Pero seguir en Java 6 cuando ha salido Java 8 con un montón de novedades interesantes me escuece. Mucho. Quiero esos tipos opcionales, clausuras y funciones de primer orden. En Android. Y lo quiero ya. Llámame caprichoso, pero creo que ya toca avanzar.

Seguir con esta versión de Java se debe seguramente al litigio que Oracle le está ganando a Google sobre la copia de Java para la máquina virtual Dalvik. Es ese el motivo de aguantar mientras puedan con Dalvik, cambiar a ART (el runtime que se va a usar a partir de ahora) y en cuanto puedan (probablemente la I/O de 2015) presentar el desarrollo de Android con Go. Que es un lenguaje creado por Google. Lo cual, por cierto, tampoco me disgustaría.

El cambio de Dalvik por ART no se debe a que incorpore 64 bits. Ni a que sea más óptimo. Si Dalvik es ya abierto ¿por qué no incorporar esas novedades y mejoras en la máquina virtual que ya tienen todos los Android? Probablemente por huir de un barco que se hunde. Y además: ¿para qué darle a todos los que están haciendo clones de Android (Nokia X, Amazon, Barnes & Noble Nook, Aliyun) estas mejoras? Me juego algo a que al final ART sólo lo podrán usar los miembros de la Open Handset Alliance. ¿Open?

IDE

Controlar el lenguaje es algo importante para crear un buen ecosistema de desarrollo. Microsoft creó C#, escribe su runtime, compilador y tiene el que probablemente sea el mejor IDE de todos: Visual Studio. Apple escribe su propio IDE, Xcode, que es una maravilla (como editor es mejorable y le faltan refactors, pero en Xcode se pueden hacer cosas que Eclipse no hará en la vida y Android Studio dentro de 100 años; ante las dudas ver un Storyboard, el diseñador de efectos de partículas con SpriteKit, los PlayGrounds de Xcode 6 o los Gauges). Apple influye poderosamente en el compilador, llvm, hasta el punto de haber creado un nuevo lenguaje de programación (Swift) para avanzar tras usar casi en exclusiva Objective-C los últimos 20 años.

Google, por contra, empezó creando un plugin de Eclipse para añadir algunos refactors, un asistente aquí y allá, un visualizador del XML de los layouts y poco más. Eclipse ni es de Google, ni Google puede influir en su desarrollo para hacerlo más Android. Luego, esperaron a que la comunidad demostrase que IntelliJ Idea era una alternativa viable para el desarrollo Android y propusieron Android Studio con mucho bombo y platillo… en Mayo de 2013. Es casi Julio de 2014 y seguimos con una herramienta en versión Alpha, que no ha alcanzado aún la versión 1.0.

Excusas

No, no me valen excusas sobre “es que Google ya se sabe, pone las cosas en Beta y tal”. Google no es una startup montada por cuatro chavales. Es la compañía más valiosa del planeta. Tienen pasta y tienen cerebros. Lo que no tienen es ningún interés en mejorar las herramientas de desarrollo.

Google sólo se preocupa de aquellos productos en los que puede vender su publicidad. Todo lo que no sirva para imprimir anuncios, sigue el camino de Google Reader y del Dodo. Y como no pueden imprimir anuncios mientras compilas, tenemos lo que tenemos.

Modelos de negocio distintos

Hay que entender el modelo de negocio de cada una de estas tres empresas para comprender cómo actúan:

  • Microsoft quiere venderte licencias. Por eso hacen el software que hacen, sólo para Windows, porque quieren venderte las licencias de Visual Studio, Team Foundation Server y Windows. Lo tomas o lo dejas, pero son claros.
  • Apple quiere meterte en su ecosistema y venderte chismes, que es donde ganan pasta, no con software (que ahora lo dan gratis, desde el S.O. hasta Xcode pasando por la suite ofimática). Ellos quieren que te compres un iPad, un iPhone, un MacBook Pro retina con AppleCare y que sigas y sigas comprando sus productos. Hacen buen software para apoyar la venta de sus productos hardware.
  • Google vende publicidad. Es con lo que gana dinero. No es nada innoble ni lo de que avengonzarse, pero todo esto de ir de salvapatrias de los open y darse aires de ir curando el cáncer cuando lo que hacen es espiarte para vender mejores anuncios me resulta muy gracioso. Google nunca ha sido pro software libre.

Open no es Libre

Open no significa nada y me molesta el uso torticero que Google hace de este término. No dicen libre porque se le echaría encima todo el mundo del Software ídem, dicen open como en voy a tirarte las migajas de los repositorios de código fuente de Android para que veas lo bueno que soy.

Eso no es libre.

En un proyecto Software Libre se puede ver el código mientras se desarrolla, y no después. Se puede aportar código. Es una meritocracia.

Aquí tenemos un desarrollo totalmente propietario y cerrado creado por una compañía que libera código al terminar. Y, por cierto, sólo parte de ese código. Google Maps o Gmail no lo liberan. Ahí lo open no entra, que eso es parte de mi maquinaria de vender anuncios… Llevo usando, aportando y tratando de comprender a la comunidad del Software Libre desde el 94. Me molesta que la gente se confunda y crea que Google nos defiende de las “Megacorporaciones” como Microsoft o Apple. Como si ellos fueran Teresa de Calcuta.

Las tres son iguales: compañías que tratan de imponer sus productos en el mercado. Ninguna tiene como misión salvar al mundo. No le demos más vueltas.

Gradle

Así que para poner la guinda al pastel, tras usar un lenguaje que no es suyo y ofrecerte dos IDEs que tampoco hacen, han cambiado a Gradle, un sistema de construcción que tiene muy buena pinta, pero que de salida es muuuucho más lento que Ant. Es decir: tu proyecto en Eclipse compila más rápido que en Android Studio. Que sí, que se puede acelerar Gradle. Entonces ¿por qué no viene de salida ya configurado correctamente? ¿Por qué machacar a los devs que ya tenemos bastante al migrar un proyecto de Eclipse a AS? Es en estas cosas donde veo la desidia de Google.

Y ese es el meollo de la cuestión. Que el equipo de desarrollo de AS en Google deben ser un programador y un becario. Y el becario a tiempo parcial. Sólo así se puede explicar el ritmo de no-avance de la herramienta. De nuevo, sin excusas: si Apple puede en un año sacar una nueva versión de Xcode, digo yo que Google podrá. Pero claro, si pierdes el foco creando gafas, relojes, coches, drones y mil cosas más pero no vas a lo fundamental pasan estas cosas.

Costes

Y ahora es cuando alguien pensará: “ya, pero es que en Apple hay que pagar 80 € anuales y en Microsoft el Visual Studio de verdad cuesta pasta, mientras que en Google pagas una vez en la vida 25 dólares y ya”.

Efectivamente: ¿ves una tendencia?. Pagas por un producto == calidad. No pagas y no pueden ponerte publicidad == Google Reader, digo herramientas de desarrollo.

Tú es que eres un Fanboy de Apple

Vaaaale, venga, sí, soy un Fanboy de Apple. Los tiempos de compilación de Gradle me los invento. Y tener un IDE más de un año en Alpha es de lo más normal. O que para lanzar el emulador tengamos que andar con trucos como la aceleración Intel o usar Genymotion (de nuevo, nada de esto de Google). De paso, que nada de lo que usa Google Play Services (que cada vez son más cosas) no funcione en el emulador y tengamos que tirar de dispositivo también es un triunfo.

Quizá tu problema es que no has tratado de desarrollar con otro entorno que no sea Android Studio. En mi caso, sí. Uso Xcode, Eclipse y Android Studio a diario. Y antes usé Visual Studio, Aptana, Delphi, Turbo C y vim. ¡Hasta Blackberry ha hecho un mejor trabajo con Eclipse para BB10 que Google!

Creo que hablo con cierto conocimiento de causa. Pero si tienes argumentos en contra de algo que lo que digo (que no sean es que a mi me gusta más X en lugar de Y) sino cosas como “resulta que el roadmap de Gradle muestra que Z y Android Studio se puede mejorar de tal y cual forma” bienvenidos sean. Si quieres ponerme a parir, no comentes: escribe un post en tu propio blog. Gracias.

Y, por cierto ¿en qué parte de I/O se está hablando de las mejoras del lenguaje, IDE o compilador, más allá de ART?

Pues eso.

Actualización del 1 de Julio, 2014

Escribí esta entrada en el avión, mientras me dirigía al GCTIC a impartir unos talleres, uno de ellos de Android. El día antes tuve la precaución de copiarme el ADT Bundle que proporciona Google para todas las plataformas, por si alguien no lo tenía instalado. Tuve que usarlo: algunos de los asistentes no lo tenían instalado, y se lo proporcioné. Total, es descomprimir un ZIP en el que va Eclipse y el SDK. Es tan sencillo, que incluso escribí en este blog cómo crearte tu propio entorno de desarrollo Android portable con Eclipse.

Pues no. No era tan sencillo. Nada funcionaba. Lo instalé en mi máquina con cierta sonrisa de desdén pensando “novatillos…”. Y no. No funcionaba. Ningún ADT Bundle funcionaba. Ni en Mac, ni en Windows, ni en Linux. Pensé que estarían mal descargados y empezamos a bajarlos de nuevo. Hasta que nos dimos cuenta de que la culpa era de Google:

En la página oficial de descargas del ADT Bundle han colgado versiones que no funcionan

Y no avisan. A día de hoy puedes seguir bajándote una versión rota de ADT Bundle de la página de Google. Y sabiéndolo, no la quitan de en medio ni ponen un aviso. No. Juegan con tu tiempo. ¿Tienes una entrega de una App? Me da igual. ¿Vas a impartir un taller? No me importa. Soy Google, la prepotencia con patas, y me importa [inserta aquí un adjetivo colorido] mi comunidad de desarrolladores. Ellos son muy listos, que se busquen la vida. Total, la culpa es suya por fiarse de mi página oficial de descargas.

Eso sí, en su bug tracker sí que parece que lo saben. Y dicen que lo arreglarán en uno o dos días. Después de una semana.

Estoy harto.

45 comments

  1. Hola, no vengo a llamarte fanboy porque no me van esas cosas, me parece perder el tiempo, pero sí veo en tu artículo bastantes indicios de hartazgo como bien indicas al final.
    Que otros lo hacen mejor, probablemente, que Google putea a los desarrolladores, no creo que tanto como dices.
    En gran parte del artículo tienes razón, lo de Java por ejemplo no tiene nombre, pero probablemente sea como tú bien dices por los problemas con Oracle.
    Pero en otras partes creo que no tienes tanta razón, por ejemplo en el IDE, no he visto software que evolucione más que Android Studio, es ir a usarlo y ya tienes actualizaciones, actualiza casi día a día, es más dices que está en Alpha y es mentira, ya ha pasado a fase beta, en un año. Quizá el problema ha sido sacarlo en fase tan Alpha, lo de Gradle no vale la pena discutirlo porque todavía está en evolución también, así que hasta que esté completamente integrado creo que no vale la pena quejarse, habrá que ver .
    Y lo dejo ahí para no alargar más este comentario, como te digo tienes bastante razón, pero hay cosas que no comparto de tu artículo.
    Eso no significa que no esté interesante.
    Saludos

    • Hola. No vienes a llamarme fanboy. Pero dices que _miento_. No, no tal. Escribí esa entrada (como indico, por cierto) en el avión el día 26 de Junio. AS pasó de Alpha a Beta el 27 de Junio. Así que cuando lo escribí era totalmente cierto. Y, en cualquier caso, llevamos 15 meses de Alpha y ahora 5 días de Beta. Se lo toman con calma…

      Lo digo porque por muchas actualizaciones _diarias_ que tenga, si esas actualizaciones te llevan a un sistema de construcción mucho más lento, a tener que importar de nuevo tus propios proyectos porque han dejado de compilar, a que falle el SDK… pues para ese viaje no hacen falta alforjas, que dice el refrán. En ese tiempo, Visual Studio, Xcode o el mismo IntelliJ sacan una release completa. Betas incluidas. Y las alphas se las comen ellos, no sus usuarios.

      Lo que no entiendo es esta defensa a ultranza de lo indefendible, este Síndrome de Estocolmo con Android. Este fatalismo hindú según el cual no es físicamente posible tener buenas herramientas para Android.

      “Es que Gradle está en desarrollo”. Excusas. Que se hagan algo como Cocoa Pods, que lo han desarrollado voluntarios si el presupuesto de Google. Que se hagan su IDE, su lenguaje. Que se dejen de excusas.

      Para meternos G+ por obligación no se lo han pensado tanto.

      • Está claro que hay problemas con Android Studio, sabes como funciona el desarrollo de software, y hasta que una versión de un programa no se considera estable, pues eso, hay problemas. Como dije antes la culpa es de Google por haber puesto como descargable y utilizable una versión Alpha de un programa, pero no sólo de Google sino de los que pretenden utilizarla sin tener problemas, y aun encima se quejan de que los tiene, pues claro que los tiene y los tendrá hasta que no se considere estable.
        “Defensa a ultranza de lo indefendible”… Se nota que no me conoces, soy el primero en criticar a Google por muchos motivos, es más, ya te dije en mi primer comentario que tenías mucha razón en muchas cosas, pero en otras no, está bien criticar, pero con sentido.
        “Fatalismo hindú”… Sin comentarios
        A ver con Gradle lo mismo que con Android Studio, para ti son excusas… Pero es lo que hay.
        Está claro que Google ha hecho muchas cosas mal con Android, están tratando de corregirlo, probablemente sea ya tarde, estamos de acuerdo. Pero eso de decir que Google desprecia a los desarrolladores… ¿Qué sentido tiene?¿Qué ganaría con ello?
        P.D: Es un tema muy diferente el negocio de Google, ¿Qué estamos discutiendo? Lo malo que es desarrollar para Android o ¿cuál es el negocio de Google y como trata de hacernos pasar por el aro sí o sí? Porque si vamos a discutir lo segundo creo que no hay discusión.
        Saludos

  2. Totalmente de acuerdo con tus argumentos y eso que no has comentado que la documentación de Android en muchos casos es de risa y en otros es hasta errónea (ver documentación técnica sobre uso de sensores) y para colmo el problema que comentas en el update no es lo más grave. Actualmente estoy desarrollando software para GoogleGlass (no lo hagáis insensatos!) y ya he pasado por algunas actualizaciones del GDK para GoogleGlass que me obliga a reescribir partes del proyecto porque a Google le da por cambiar trozos de la API del GDK relacionados con cosas muy estables en la versión del SDK de Android para teléfonos y por qué? pues porque a Google le da la gana, al becario no le da la gana de incluir algo para mantener la compatibilidad al 100% con cualquier dispositivo Android y supongo porque a Google le apetece que a los desarrolladores se nos pongan de corbata cada vez que vemos la notificación de una actualización del GDK.
    Y no voy a decir nada de la accesibilidad de Android estudio, el emulador de Android o las páginas oficiales de documentación… no voy a decir nada porque no hay nada bueno que decir.
    Trabajo en Android, iOS, KNX, Linux, OSX y algunas cosas más. Me gusta Eclipse para trabajar en proyectos Web y Javascript pero cada vez que lo abro para trabajar en Android me siento como cuando me toca ir al dentista. Todo lo contrario que cuando abro xCode, Visual Studio o bluefish.

    • No quería aburrir al personal ni que sonara a *todo negativo* sobre Android, que no lo es. Pero las herramientas están faltas de cariño. Eso es evidente.

      Sobre la capa de accesibilidad, probablemente tú eres el experto a nivel mundial, nada que añadir. Pero la documentación podría ser mejor, sí. Al menos, ahora ya hay un curso en video oficial de Google

  3. Cuánta razón..un artículo muy acertado,gastan un tiempo increíble en cosas como Glass material etcetc pero no son capaces de migrar a java 8 ni de darnos un ide decente..

  4. Cuanta razón, y que bien explicado.

    Yo cada vez estoy más contento de haber tomado la decisión de pasarme a RubyMotion para desarrollar aplicaciones móviles. En la versión 3.0 también se podrán compilar apps para android.

    Un entorno como el de Ruby/RubyMotion, creado y cuidado por gente que continuamente esta obsesionada en programar y trabajar mejor, y que compile en dos plataformas no es una mala solución.
    Aunque para gustos colores, claro.

  5. No estás sólo. Simplemente un poco de experiencia en cualquier otra plataforma de desarrollo te hace darte cuenta de lo chapuceros que son en Google y de la poca seriedad con la que tratan a la fuente principal de vida de sus plataformas.

    Porque puede que en un principio fueran las prisas por plantar una alternativa no teniendo nada y cogiendo retazos de otros lenguajes, IDEs e ideas. Su comienzo era un movimiento empresarial que podría explicar la prisa y la poco chica propia que ponían en el asador.

    2014 y seguimos con promesas, con problemas, con complicaciones y con chapuzas. No es excusable de ninguna manera viniendo de un gigante *tecnológico* como ellos. Es falta de compromiso y muestra que realmente quieren estar presentes en todos los ámbitos tecnológicos que puedan suponer una amenaza o un beneficio potencial, pero sin tomarlo muy en serio.

    • Probablemente en 2009 tendría sentido escoger Eclipse y tener malas herramientas. Disculpable en 2010. Pero a mediados de 2014, y con perspectivas nulas en este sentido, cada vez se nota más.

      El desarrollo con Visual Basic 6 era más sencillo…

  6. Un par de dudas de no iniciado, que aprecia (y pretende aprovechar) la objetividad y experiencia que denota el autor:

    Es posible desarrollar aplicaciones en cualquiera de las tres plataformas mencionadas de forma autónoma, es decir, en un dispositivo con un sistema operativo y versión de las herramientas de programación determinados sin tener que enviar información a los fabricantes y pudiendo probarlas y ejecutarlas localmente indefinidamente (sin pasar por las correspondientes stores), asumiendo lógicamente que no se aprovecharán las novedades de versiones siguientes, pero tampoco se perderá su funcionalidad mientras no se actualice el SO del citado dispositivo y se conserven las herramientas de desarrollo utilizadas originalmente para realizar adaptaciones internas?
    (Supongo que para el caso de dispositivos móviles siempre se requerirá un PC o un Mac que cumpla también las condiciones anteriores)

    Alguna pista o recomendación para introducirse en la programación en general y de app móviles y robótica básica en particular (manuales con conceptos básicos y lenguajes ‘oportunos’). Sería acertado apostar por iOS y Scratch-Mindstorm respectivamente con fines pedagógicos elementales, pero confiando lograr una aplicababilidad accesible y motivadora?

    Gracias.

    • Respondo como programador iOS / Android sin idea de robótica 😀

      Para lo que describes probablemente lo que mejor se ajusta es Android. En iOS tienes que pagar (ser registered developer) para instalar tus Apps firmadas en el dispositivo. En Windows Phone parece que también.

      iOS probablemente sea ideal, pero no cumple con el requisito de “gratis”. Android sí, pero si se programa en C/C++ para el robot vas a tener que usar el NDK y prepárate a disfrutar…

      • Agradezco la rápida respuesta, pero debo de haberme explicado mal. Cuando me refería a no pasar por el store, si es lo que te ha confundido, me refería a no depender de éste para el uso de las app desarrolladas por uno mismo, no que me importara pagar una cuota anual de unos 80€, si no estoy equivocado, (en el caso de ser imprescindible pasar por ella para poder ejecutarlas, ¿es posible LIMITAR la visibilidad de la misma o su descarga a un grupo de usuarios determinado?, supongo que lo de no implicar más coste por cada descarga, tanto para el desarrollador como al usuario sólo requerirá ofrecerla gratis a ese grupo). Por tanto, la cuestión de la AUTONOMÍA en el desarrollo me interesa en general para aplicaciones de escritorio en Windows y OSX, ya que para iOS me parece que será bastante difícil mantenerse al margen de las actualizaciones y me temo que para los primeros también cada vez más. Podrías darme tu opinión?

        Android me parece una selva y Windows Phone, sólo con la experiencia como usuario en la que se subió a Skydrive toda la agenda de contactos sin permiso y sin avisar con sólo activar la cuenta Microsoft y sin visos de poder evitarlo, mejor ni hablar. Para mí el respeto a la libertad del usuario a decidir sobre la privacidad de sus contenidos es imprescindible.

        Respecto a las recomendaciones de aproximarse a la programación en general, esperaba si es posible algunas REFERENCIAS a publicaciones y lenguajes básicos o tus consideraciones, como preferir centrarse en una plataforma directamente, recurriendo a todo el material que ofrece el fabricante, por ejemplo.

        Gracias de nuevo y siendo haberme alejado aparentemente del tema, pero creo que tiene bastante relación, en el sentido de que la crítica a una plataforma implica una recomendación alternativa en la aproximación al desarrollo de aplicaciones. También, de algún modo persigue contrastar hasta qué punto ese todo-en-uno de Apple efectivamente permite acceder sin más información complementaria y luego no te atrapará de tal forma que no puedas disponer de tus creaciones libremente.

  7. Muy de acuerdo con el post. El caso es que no paro de ver gente quejándose de Apple, Xcode y Objective-C (me pregunto cuántos de los que se quejan lo habrán usado mínimamente) mientras que de Android y su ecosistema no se habla apenas. No digo que el ecosistema de Apple sea perfecto, pero sí que se nota que intentan mejorarlo poco a poco. Por poner un ejemplo, el sistema de “provisioning” de dispositivos de desarrollo ha pasado de ser un infierno a algo bastante más simple. La documentación es una maravilla, no es que mi trayectoria como programador sea larguísima pero nunca he visto nada mejor, la documentación de cada función/API es clara, tienes documentos que te lo explican paso a paso, techtalks… mientras que la de Android es incompleta, difícil de comprender (a mí personalmente me deja con más dudas que respuestas cuando acabo de leer algunos documentos), con ejemplos que no funcionan (versión 2 de la librería de IAPs, tal cual te la bajabas no funcionaba, buscabas en Google y te encontrabas un hilo en StackOverflow explicando como solucionarlo que tenía cientos de votos y meses de existencia!, ¿por qué no lo arreglan?)

    Y como ya has dicho en otro comentario, del NDK ya mejor ni hablamos, ¿no se dan cuenta que es la forma más fácil de que la gente haga Apps multiplataforma? C/C++ es lo más portable a día de hoy en plataformas móviles pero parece que sólo quieren poner trabas a su uso: tedioso de configurar, standards C++11 incompletos, warnings insalvables… una joyita, vamos.

    Luego ves cosas como esta (http://developer.android.com/reference/android/os/UserManager.html#isUserAGoat()) en la documentación y te entran ganas de llorar. Que oye, a mí me gustan mucho los easter eggs, pero creo que tienen mil cosas a las que dedicar tiempo antes que esto.

    Suelo tener una actitud bastante positiva y tolerante cuando aprendo cosas nuevas, pero la verdad, teniendo Android el rodaje que tiene, creo que los desarrolladores estamos en posición de ser bastante exigentes con el entorno que proporcionan. Porque no es que parezca hecho por un tío y su becario a tiempo parcial, parece más bien una práctica de 1º de carrera.

  8. 100% de acuerdo contigo.

    En el tema del desarrollo en Android e iOS (no meto Windows Phone o BB porque no he programado nada para ellos) da igual si eres fanboy de una u otra marca, cualquiera con dos dedos de frente puede ver claramente que desarrollar y simular en la plataforma de Apple es una delicia mientras que cada vez que tengo que hacer algo en Android es para mi un tortura.

    Y no lo digo como fanboy de Apple ya que mientras que solo uso Mac en mi casa y para mis proyectos personales, no me gusta nada iOS (aunque la versión 8 me trae tantas cosas de Android que parecen bien hechas y que encima se integran con mi Mac que quizás me hagan volver a iOS que dejé con el iPhone 4 por Ice Cream Sandwich)

  9. Damn!!! excelente articulo planteas la opinion que muchos compartimos en palabras contundentes. Totalmente de acuerdo con lo que dices, en mi caso le perdí totalmente la fe a Android tanto por su desarrollo y por su poca preocupación por el buen contenido que pueden ofrecerle a sus usuarios (la cantidad estúpida de apps basura en la Play Store). Apple sera un tirano y dictador como quieran llamarle pero ofrece algo muy bien realizado, de calidad y se preocupan bastante por sus usuarios finales a tal grado de cuidar cada app que se presenta. Desarrollar para iOS es el cielo para mi.

  10. tío totalmente de acuerdo, lo del lenguaje desde un principio dejo mucho que desear y no porque no me guste java, sino porque creo que hay lenguajes mejores en muchos de los aspectos (lamentablemente estas decisiones seguro las toman hombres de negocios y no los ingenieros). No supieron aprovechar a Guido Van Rossum cuando todavía estaba en google. No vislumbro un panorama muy prometedor ya que Android ha entrado a una etapa muy cómoda en donde esta por arriba de iOS y seguro que piensan: ¿Para que invertir mas en cosas técnicas si ya estoy en la cima? y los developers tienen que cubrir esa demanda que hay… en fin

  11. Hola que tal! Recien estoy retomando el desarrollo de android y es notorio el atraso en las herramientas (deje el desarrollo de android hace 2 años y continua igualito)… tan solo la lentitud con la que corren los emuladores es desesperante (procesador I7 y 8 GB de ram :-|) y no hablemos de hacer debugging :-(. Ahora utilizo mas VS2013 y la verdad no hay comparación entre ambos IDES… Y eso que no he probado las herramientas de trabajo en equipo de Eclipse

  12. Estoy parcialmente de acuerdo contigo pero creo que exageras bastante aunque seguramente tengas más conocimiento de causa que yo.

    Android Studio ha sido alpha hasta hace muy poco y Gradle no es todavía muy estable… el programador es ese ser EXTRAÑO que se pone a usar con herramientas que ni siquiera se consideran a sí mismas con la “terminación” y calidad aceptables para generar PRODUCTOS y luego SE QUEJA AMARGAMENTE.

    No digo que sea tu caso, pero por lo menos en mi caso, como programador Android “nativo”, he ignorado los cantos de sirena de Android Studio del propio Google y de los “early adopters” y a nivel profesional uso Eclipse, aunque ahora uso también Android Studio pero para proyectos personales y hay que reconocer que ahora tiene un aceptable nivel de calidad pero ten seguro que muchos “early adopters” lo habrán metido en sus empresas en sus versiones pre-alpha. Son esos “early adopters” los que hacen avanzar la tecnología pero también los que en ocasiones crean mucho ruido negativo INJUSTO. Por otra parte no es fácil ni barato adaptar un IDE (el motor de IntelliJ) en dos días, ni siquiera para Google, la prueba es que sin la inversión de Oracle, el soporte de Android en NetBeans es muy muy mediocre.

    Respecto a Java lo de Android es un milagro fascinante aunque ciertamente algún directivo del área desarrollo merecería unas cuantas voces por primar VELOCIDAD de funcionalidades respecto a calidad. Milagro porque han conseguido adaptar Java, lenguaje Nº2 de uso mundial por debajo de C según Tiobe , a un sistema operativo móvil “reinventado” cuando se concibió para desktop y servidor, consiguiendo una productividad mucho mayor que el mundo iOS en lo que respecta a la programación en sí (no me meto en las herramientas de diseño).

    Estoy seguro que Google ahora mismo está trabajando para soportar Java 8, superado el juicio sobre la máquina virtual, Google no tiene ningún problema legal en soportar las versiones nuevas del lenguaje, no esperes soporte mañana cuando Java 8 tiene apenas 2 días y respecto a Java 7 la verdad es que sintácticamente no aporta gran cosa.

    Como tú bien dices Google desarrolla en la intimidad y luego publica por lo que no te sorprendas cuando dentro de unos meses Eclipse y Android Studio soporten Java 8 con el apoyo de Google, teniendo en cuenta que el control que tiene Google sobre ambos IDEs no es absoluto, hay dependencias con la fundación Eclipse y con IDEA, que esa es otra, todas las culpas no las tiene Google.

    Respecto a Dalvik y ART son dos filosofías de JIT, no veo prácticamente ninguna relación con el juicio con Google que “solucione” ART, ART es una retro-revolución, es a groso modo compilar dex a nativo en tiempo de instalación en vez de usar JIT, ahora que los dispositivos tienen memoria de sobra y son mucho más potentes.

    Ciertamente el software es un “subproducto” para Google pero tampoco lo han hecho tan mal cuando la cuota de mercado conseguida de Android es ENORME. Por otra parte mantienen herramientas en dos IDES, Eclipse, y Android Studio lo cual no es muy normal y eso no precisamente muestra demasiado desdén.

    Respecto a XCode tuve la “mala suerte” de supervisar durante un poco de tiempo el desarrollo de una aplicación iOS y pude tocar un poco el XCode. Sinceramente me pareció un IDE desarrollado por extraños aliens, y la ausencia de algo TAN BÁSICO como un Find Usages/References ni refactorizaciones, seguramente por puro capricho del alien director del desarrollo de XCode, me hizo considerarlo como una herramienta nada developer-friendly salvo para los incondicionales de Apple que lo justificarán todo. Afortunadamente existen herramientas complementarias como AppCode de IDEA, de otra manera el desarrollo iOS sería insufrible y no sólo por la ancianiedad de OBJC sino por la falta de respeto intencionada de Apple respecto a los programadores al no proporcionar herramientas de desarrollo básicas inventadas hace décadas (no, el mundo de las herramientas de análisis estático ya existe desde tiempos del C).

    Esta no es una defensa a ultranza de Google, las defensas a ultranzas las dejo para los fanboys, pero como tu artículo es tan negativo es normal que mi comentario tienda a equilibrarlo un poco.

    Y si, te doy la razón, el software no es el núcleo de negocio de Google y por tanto hay que desconfiar sobre el futuro, continuidad, calidad etc pero hay que reconocer que con sus defectos y mediocridades está dando de comer a mucha gente 🙂

    Y sí Google es una empresa, está para ganar dinero, y sus estrategias están para ganar dinero, pero dejan algo de hueco para que los demás ganemos dinero a su costa, evidentemente Google no trabaja directamente para nosotros por lo que no podemos esperar una gran dedicación y fidelidad, pero es lo que hay y NO ES POCO.

    Un saludo

    • – Yo no me quejo por los problemas que da una Alpha. Me quejo de lo que tardan en pasar de Alpha a Beta. Y de las pocas, poquísimas funcionalidades que incorporan. En ese tiempo, versión nueva de Visual Studio, de Xamarin Studio, de Xcode y de IntelliJ. Los únicos que no son capaces: Google. Que se compren JetBrains (la empresa detrás de IntelliJ) y solucionado el problema. Y luego si eso que se pongan a hacer gafas.
      – Java: de milagro, nada. Java se ha usado para el desarrollo en móviles desde el principio. Eso es Java Micro Edition (J2ME). El desarrollo en Blackberry de antes también era Java. La empresa que creó el primer Android sólo seguía la tendencia en móviles del momento.
      – Java 8: es una release tan importante como lo fue Java 5 cuando trajo genéricos al lenguaje. Esta versión trae la parte funcional: clausuras, funciones de primera clase… Si eso te parece menor creo que deberías mirar este artículo y decirme si los cambios son “menores”. De Android o iOS no sabré, pero de Java tras obtener cuatro certificaciones del fabricante voy teniendo idea ????
      – Por desgracia, debido al juicio con Oracle probablemente no disfrutemos de Java 8 para Android. Google acabará (creo) usando su propio lenguaje, que es la única manera de estar “a salvo” de pleitos. ART creo que prepara el camino para luego soportar Go (o el lenguaje que sustituya a Java). Si no, sería más sencillo simplemente actualizar Dalvik, ¿no?
      – Cuota de mercado enorme <> calidad del software. Windows 95. Acrobat Reader. Flash. Si calidad == cuota de mercado, McDonalds es para gourmets. Efectivamente, es raro (y caro, supongo) mantener dos IDEs. Deben “matar” uno y centrarse en el otro. El problema: AS no avanza. por ejemplo, no puedes usar AS para proyectos con Android NDK. Que son muchos.
      – Sobre Xcode / Visual Studio / Otro IDE: desarrolla una App completa y me cuentas. Te darás cuenta de que habías estado viviendo en el Infierno ????

  13. Teniendo en cuenta todo lo planteado, me asalta una duda, como puede ser si todo es tan desastroso como se plantea que Android tenga una de las comunidades mas fuertes desarrolladores detras? debería estar en la mierda, sin embargo cada día es mas fuerte en este aspecto.

    Otro punto sobre el tema de Open, este punto también lo veis malo? por lo menos liberan código y aunque las herramientas no estén pulidas, ayudan también al desarrollo, eso en apple no lo veremos y en las dos empresas tienen que pagar igual a sus trabajadores por el trabajo realizado, por lo que es de agradecer, gracias a eso se pueden ver autenticas maravillas que no serian posibles si no liberaran el código.

    • – eso de que la comunidad de desarrollo de Android es “de las más fuertes” habría que contrastarlo con datos. No se, conferencias anuales, repos en github, preguntas en StackOverflow. En cualquier caso calidad de las herramientas no tiene causa-efecto directa con la comunidad. Las primeras Arduino no eran fáciles de programar y sin embargo han triunfado.
      – no, no veo malo que liberen código y eso es lo que he escrito. Siempre que tengamos claro que ese modelo no es el propio de los proyectos Software Libre como los de Apache, Linux o GNU. Que son cosas distintas y que Google se aprovecha de llamar “Open” a su plataforma. Plataforma que, por cierto, es totalmente propietaria: ¿o hay alguien capaz de hacer una App medianamente funcional usando sólo el SDK AOSP? Ni un mapa puedes poner sin usar las librerías propietarias de Google. Es curioso que los desarrolladores que están todo el día con el “Open” en la boca no se percaten de que desarrollan para una plataforma propietaria…
      – No, Apple no libera nada, es un ogro come-niños y creó a Godzilla en un laboratorio. Por eso, el compilador llvm no avanza gracias a Apple. Ni Webkit es el motor (que por cierto usó Google para hacer Chrome) y que ha sido impulsado por Apple. Ni el kernel Mach de OS X es software libre… Mejor mira la página de software libre de Apple y me cuentas.

  14. Claro, migremos a java 8 y a tomar por culo la retrocompatibilidad con las versiones 2.X.

    Si, soy de los que odia la fragmentacion, y el primero en querer todas las novedades, pero hay que saber cuando se puede y cuando no.

    Sobre el IDE y Gradle: pueden estar en beta o en alpha, pero te impiden trabajar? Te ha dado errores tan graves que te destrozara un proyecto? O retrasara una entrega durante tres semanas?

    Lo uso desde el primer dia, la version 0.0.1; he sufrido todos y cada uno de sus problemas, pero aun asi no volveria para atras ni loco.

    En mi trabajo hay gente que uea xCode, ante mi pregunta de como usan el StoryBoard (con la salida del navigation en AS): “casi nunca lo usamos”; Sera que son idiotas? O que no les sirve? Apple / xCode no es dios tampoco.

    Que android no sea libre… Has provado a compilar una ROM? Android es libre y se publica cuando sale una nueva version, bueno, asi no hay interferencias. Seria muy bonito, pero dime quien de los que tu defiendes es open?

    Cuidado! Gmail! Maps! Play Services! No son OpenSource! Terror! El cataclismo! … Me dejas ver el codigo de tus aps? No has firmado acuerdos de confidencialidad? Que utopia que el software es para todos.

    Android es libre, puedes hacer un fork i olvidarte de google, eso si, olvidate de ciertas cosas: localizacion… mentira, android provee localizacion.

    Los aparatitos… google cast funciona gracias a mediaroute, en la libreria de soporte.

    Y para acabar, los becarios, no tienen ni idea, son lo peor, nos hacen perder el tiempo y solo sirven para tomar cafe.

    Lo digo, porque al haber sido becario lo vivi… eso si, sabia muchissimo de android, al nivel de mis compañeros y no tuve problemas en ayudar a sacar proyectos adelante.

    • – ¿y migrar a Java 8 destruye la retrocompatibilidad porque…? ¿No se puede, igual que marcas el SDK que escoges para compilar, el JDK que usarías, de forma que los proyectos “nuevos” funcionen con Java 8?
      – sí, los errores de los entornos de desarrollo me han hecho perder mucho tiempo, unas hojitas cada vez. Pregunta por ahí: no te lo querrán decir, pero no se actualiza uno el Eclipse ADT precisamente “tranquilo”
      – no has usado nunca Xcode peeeeero eres un experto comparando ambos IDEs… ????
      – Android no es libre. Android AOSP tampoco. Por eso se llama Android *Open Source* Project. Referencia de cabecera
      – Yo no me quejo de que los servicios de Google sean propietarios. Me quejo de que “vayan de” Open cuando no lo son.
      – Haz un fork de Android con Play Store y mapas, por favor
      – ¿Te has sentido ofendido por haber sido becario o es que te quedaste sin argumentos antes de empezar?. En esta industria TODOS hemos sido becarios. Yo del 97 al 98.

      Opiniones no, hechos. Por favor.

  15. Si pero no. Me explico.

    La siguiente version de android va con Java 7, y AS esta en beta no alfa. De las opciones del IDE no me meto, que las opciones de refactorizacion y autocompletado de Java le dan mil vueltas a las de ObjectiveC, no se si swift mejora eso. Esto no tiene nada que ver con la plataforma (en la que el editor de iOS le da mil vueltas al de Android) sino con el lenguaje en si.

    Detalles que no impiden que sea vergonzoso y que comparta tu opinion.

    A mi lo que realmente me revienta es el desprecio a Eclipse desde Google favoreciendo a un IDE que aun esta en beta. Vease el ejemplo sobre Android Wear, en el que la documentacion oficial SOLO explica como hacerlo en AS, si usas otra cosa (sea eclipse, sea vi), TE JODES. Y tienen que venir los dev. advocate de Eclipse a arreglar semejante desaguisado.

    No official instructions to make an Android wear app on Eclipse, only Android Studio, which is in beta. No low level instructions either :(— Raul Portales (@sla_shalafi) July 2, 2014

    • – ya he contado que el post lo escribí el 26 de Junio en el avión. Que Google sacó AS de Alpha el 27, pero quise dejar el post tal cual.
      – los refactors de Xcode no dependen del lenguaje, sino del IDE. En el mundo Cocoa muchos usan AppCode (IDE de JetBrains) precisamente por sus refactors. Y no pasa nada. Para todo lo demás Xcode. Constantemente se le reclaman estas mejoras a Apple. Esto lo tiene que mejorar Apple (como muchas otras cosas). Aún así, en conjunto el SDK + herramientas de Apple está años por delante de las de Google. Las de Microsoft igual. En serio: en lugar de escucharme decirlo, probadlas. Es la forma de salir de dudas.

      • He desarrollado para iOS con XCode y para Symbian con VisualStudio. Cierto es que la version de Visual Studio era muy vieja, pero aun asi, la ultima vez que lo probe no le llegaba en funcionalidad a Eclipse (o al menos en la funcionalidad que yo uso y que a mi me gusta)

        XCode tiene sus cosas buenas y sus cosas malas. Tambien es cierto que la ultima vez que hice algo para iOS fue hace 3 años, pero por aquel entonces solo el interface designer me parecio mejor las herramientas de Android. Eso si, estaba a años luz por delante de Android.

        Y a fin de cuentas, lo cortes no quita lo valiente, y es que el desprecio que ha dado Google hacia las herramientas de Android es vergonzoso. Eso es innegable.

        No sabia que habian sacado el AS de alfa el otro dia, la verdad es que me dio tan mal resultado que dije que no lo volvia a usar hasta que fuera una release completa.

        Dicho sea de paso: Eclipse + ADT funciona mucho mejor que el ADB (Android Developer Bundle) que en teoria es lo mismo. No se como lo hacen, pero es mucho mas inestable.

  16. Enhorabuena por tu post.
    Como no te atreves a decirlo, lo haré por ti: el desarrollo en Android en 2014 es una PUTA MIERDA, con perdón. Lo del emulador es un chiste de mal gusto, les paso por alto la versión de Java, ya se que no voy a tener un IDE como visual Studio, pero tan sólo esperaba no deprimirme mientras compilaba e instalaba en emulador. A si que una App que me pidieron acabé desarrollandola híbrida, eso sí, tuve el detalle de utilizar angularjs, ya que se ve que esa parte del gran hermano si cuida a sus desarrolladores.

  17. Por curiosidad ¿quien en su sano juicio usa constantemente el emulador de Android?

    Entiendo que para para probar una versión concreta o pantalla concreta sea necesario, ¿pero qué empresa de desarrollo decente no tiene AL MENOS dos dispositivos reales para desarrollo (un móvil y una tableta)?

  18. Pingback: TOP XKCD, microservicios y periodismo tecnológico, Pull Request #6 - Webeando - Tecnología y Periodismo digital

  19. Completa y absolutamente de acuerdo. Android es la basura más grande y soberana que me he encontrado en los últimos años, muy por encima de Internet Explorer en la época de prepotencia de Microsoft.

    Eclipse es una plataforma mala, si, puedes meterle todos los addons que te dé la gana, pero construir sobre 6000 kilometros cuadrados de fango es llamar al desastre.

    Google tiene productos que son una maravilla, y apis que dan gusto, pero es que Android es un barco con agujeros al que conforme le ponen un parche, le sale otros dos agujeros… Desde seguir basado como dices en Java 6, hasta los IDEs que… en fin… probablemente el más difícil de instalar de los últimos que he tocado. Visual Studio es instalar y ya puedes compilar directamente sobre la máquina virtual.

    Me gustaría que saliera ya AS versión final. Intellij Idea es un IDE que me encanta, quizás algo lento en la carga para los que aún usamos HDD pero completamente “Worth It”

    En fin. Estoy de acuerdo contigo, esperemos que tomen nota porque como sigan así se van a convertir en el Windows Mobile 6.5 de hace 4 años, si, ha sido famoso y útil, pero muerto. Saludos!

  20. Aunque yo no estoy metido en el mundo de las apps, creo que el primer fallo que google hizo con Android fué usar Java. Y no me malinterpretéis, a mi me gusta bastante Java. Pero creo que si en lugar de inventar el tinglado que inventaron (con el resultado que hoy tenemos), hubiesen optado por C++ y Qt, este post hablaria de lo retrasado que está el desarrollo bajo iOS respecto Android.

    • Dani, no estoy de acuerdo, porque eso ya se ha intentado 😀

      Blackberry 10 utiliza C++ y Qt y mira dónde está el pobre. Aunque técnicamente es un buen sistema, no consigue “tracción”. No siempre lo mejor (técnicamente) es lo más popular.

      Mi queja va más por la desidia percibida, el poco dinero que se están dejando en esto.

  21. ¡¡¡Fanboy de Apple!!! XD. Ejem, pues sí, es cierto que es un tema que me preocupa, aún no he desarrollado nada en serio para Android, porque nada más que bajarse los sdk son una pesadilla, cientos de ellos, los propios de Google y los de las distintas marcas, fabricantes de GPUS, CPUS. Parece que Google no entiende que la gente desarrolla apps para ganar dinero, no por hobby.
    Yo ayer tuve un debate sobre porqué razón aprendí a desarrollar cosas para iOS, cuando hay que pagar una anualidad y todo eso. Pues por un lado, sus herramientas de desarrollo son una maravilla y segundo, a los usuarios de iOS los han educado para que sepan que las aplicaciones cuestan dinero. Yo prefiero mil veces pillarme Ridge Racer SlipStream a 5€ que pillarlo gratis y tener que pagar por mejoras en los vehículos, primero porque me siento un rata y por aplicaciones que me gustan no me importa pagar y segundo porque es la única forma de que esto siga adelante. Claro, aplicaciones gratis, con la publicidad consigues el beneficio, App gratis + Publicidad + Google. ¿Quién va a ganar ahí realmente?.

    Un saludo.

  22. Pingback: El lamentable estado de las herramientas de desarrollo Android

  23. Respecto a :
    “Y, por cierto ¿en qué parte de I/O se está hablando de las mejoras del lenguaje, IDE o compilador, más allá de ART?”

    https://www.youtube.com/watch?v=3TtVsy98ces
    https://www.youtube.com/watch?v=hu4U8XKmJGA
    https://www.youtube.com/watch?v=KBhOkfbbZLk
    https://www.youtube.com/watch?v=97SWYiRtF0Y
    https://www.youtube.com/watch?v=KzSKIpJepUw

    Algunos de los argumentos que expones tienes toda la razón(java 6 🙁 ), pero la integración de IJ/AS con Gradle me encanta y personalmente creo es una mejora brutal en cuanto a productividad, los tiempos de compilación son menores que eclipse+ant

    • Hola Iñaki,

      Ese post se escribió durante la I/O, antes de que salieran los vídeos de las sesiones. En la Keynote, nada de nada. Y después, has podido reunir 5 vídeos. Comparado con las sesiones de la última WWDC (la otra plataforma con la que trabajo habitualmente, y con la que es normal comparar) esto es nada. Que está bien que saquen algo. Pero me sigue pareciendo poco para la importancia de Android como plataforma. De nuevo, espero más de Google y veo falta de compromiso.

      Gradle se puede optimizar “si ya sabes Gradle”. En mi opinión, si cambias de herramienta y obligas a los devs Android a migrar a tu nueva herramienta, es tu responsabilidad facilitar esa migración con información, vídeos y, sobre todo, un Gradle que venga “optimizado” de serie. ¿Tan complicado es crear una descarga de un trillón de GB con todo lo necesario para descargar y que todo funcione sin complicaciones? Quien quiera optimizar puede hacerlo “a mano”, y quien sólo quiera hacer su trabajo y no “pelearse” con los inventos de Google, igual sale ganando.

      Por supuesto, no hablemos del millón de cosas que le faltan a AS como un diseñador de layouts visual, o que soporte el NDK, o que saquen una versión mayor con un ciclo que no sea bianual, etc. No, Google sigue sin echar toda la carne en el asador. Como siempre.

  24. hola, hace tiempo que no entraba en este blog, que por sierro es muy bueno, si no que no he tenido tiempo por el trabajo, la universidad y mejor dicho la vida misma.

    En cuanto al caso expuesto, es verdad, el ADT bundle de google no es de color de rosas, lo he probado, y siempre tengo problemas, y es verdad que en comparación con herramientas de desarrollo de iOs y recientemente con webOS TV no tienen nada que ver. lo he probado en windows, ubuntu y mac, y siempre es lo mismo. Espero que google se tome esto enserio porque es una mapa pasada para los desarrolladores.

    En cuanto a webOS veo que también usa una ADT con eclipse portable, y sorpresa, todo funciona a la primera, y le noto mas liviana que la de android, también es cierto que la de android debe de tener plugins a reventar por el tema del número de dispositivos y emuladores que soporta, pero creo que se puede hacer un mejor trabajo. LG lo ha logrado con webOS aunque me siento mas comido editando en sublime y depurando en el terminal. Una de las cosas que me gustó de LG es que ha creado un paquete adicional para poder ejecutar las apps de webOS desde el sublime. Ojalá google vaya por el mismo camino.

  25. Por cosas como esas me cambie a .Net, solo toco java cuando me piden algo muy especifico, pero creo que es hora de un cambio. Tienes mucha razon sobre todo en la probreza de los ide’s. Intellij Idea es lo mas lento que he usado en mi vida, Eclipse de vez en vez suelta sus errores garrafales y bueno ahora tenemos la aberracion de Android Studio.
    Microsoft bien es cierto que es propietario y son una sola plataforma tambien es muy incierto que alguien paga por tener Vs instalado en su PC. En cuanto a licencias dejen que las empresas se encarguen de eso, nosotros somos desarrolladores.

  26. Yo después de 2 semanas no he conseguido hacer un Hola mundo en android,lo que toy intentando hacer es algo de domotica,con el pc y xubuntu y netbeans,en poco tiempo he conseguido una ventanita con botones que al pulsarlo manda comandos por tcp a un microcontrolador stm32f4,, enciende bombilla, apaga bombilla, ect,……… Bien pues pienso vamos al table y el móvil, primero pruebo eclipse,lo he instalado, de todas las maneras posibles,y sin tocar nada,errores,como voy a seguir si ya empiesa mal,total que las 25 soluciones que dan en los foros no me funcionan,al final paso a android Studio, llevo cuatro días y lo mismo,errores sin tocar nada,sé suponía que lo gordo del invento era hacer funcionar el stm32, que tiene guasa la cosa,pues no lo más complejo es hacer un Hola mundo en android,creo que al que le funciona será por que tiene verciones antiguas o yo que se,porque, como solución ponen darle al clean y recopila, juas, pon la version actual, ponla en mi sistema operativo,y en un pc como el mío y darle tu al clean haber si se arregla,voy a parar, y la opción del table o el móvil lo dejaré para otro momento,…..

Comments are closed.