Google Web

24 ago. 2009

No Cert No Debug Parte 3 de n

Me encuentro detenido en el espacio/tiempo del iphone/dev... ya me dieron un iphone para hacer pruebas "en dispositivo", pero oh sorpresa, no registration => no certs, no certs => no compilation!!!!!!!!!!

Por lo que sigo esperando el correo de activación de Apple (que se registraron el viernes por la mañana) y aún no se dignan en darnos. Asi que no habra patoaventuras para ustedes, hasta que no consiga mi certificado feroz. Como plus les dire, que usar Audio es de lo más fácil, ni en .NET es tan fácil! Después les dare uno lindos snippets y tips.

11 ago. 2009

iPhone daemon! Parte 2 de n

OK - Se hace la GUI

Después que la revolución gráfica se vio humillada por el temor a Objective-C con pseudoQuartz, Dios miro al frente y dijo "bueno pues, que sea Cocoa Touch y ya...". La GUI es un Controller común y convencional, asi que no dare detalles... Después del sketch malformado, era el momento idoneo de meter biz logic. Esta llego en forma de Core Data. Me mantuve esceptico de este framework. Veia algunas entidades, data context, y soporte para SQLite, quizás podría darle una oportunida (o el framework darme una a mí).

Después de la primer media hora, el amor verdadero me invadió. Había creado un hermoso singleton que delegaba todo lo necesario para crear mi repositorio SQLite, y manejar el control de mi DataContext. La verdad que me sorprendio mucho la facilidad con que podía crear una entidad y con magico save en el context (asi como lo hace LinqToSql) tener mi entidad persistida. Añade a esto un selector con pseudoclausas WHERE, y tienes un DAL de primer mundo con pocas líneas en tu pequeño mundo iPhone.

Ya tengo como guardar mis lindos datos, pero el siguiente issue que viene a mi es parsear el XML que viene de un web service, con los datos que necesito insertar. El proceso de descargar esta simplon, NSUrlRequest es el amigo de los niños. Pero para parsear, oh no, oh noooo! Es un mar de complicaciones, NSXmlParser de iPhone es un "has lo que quieras" parser, lease implementa todos los delegados para cuando el parser encuentra un tag o atributo. Cosa nada buena, asi que justo ahora experimento con una open source library llamada TouchXml, esta dos tres, pero me sorprende que la mitad del codigo esta comentada, que planea estos sujetos?!

Seguire dando polea hasta que logre poblar mis tablas y este listo para comenzar la daemonizacion! Punto extra, permitir a la app daemonizada hacer llamadas xD.

5 ago. 2009

iPhone daemon! Parte 1 de n

OK - Comienza el caos.

Se me fue asignado un nuevo proyecto, de esos complicados y que te hacen recapacitar si aún deseas ser programador, jajaja. En esta ocasión, tenemos un cliente ocasionalmente conectado (todo bien aqui), en iPhone (empieza el caos), que se lanze cada n minutos (tengo miedo) e interrumpa lo que sea. En un mundo de maravillas sería fácil, pero como todos sabemos iPhoneOS no soporta "background process", asi que oh My Ape God, que haremos?!

La realización de este proyecto, parece un poco exagerada y complicada, sin embargo no es imposible. A lo largo de mi travesía ire narrando como muero en el proceso de hacer un hook en el SpringBoard que este dormido con un timer y las implicaciones que eso me llevaran. Por el momento ya cuento con un poco de lectura, http://code.google.com/p/iphone-backgrounder/ esperemos que sea de ayuda las técnicas de estos sujetos.

Plus - La aplicación debe usar uso de OpenGL y Quartz, dado que la GUI será "3D" no con los controles estandares. Hermoso no?!