may 09

Al pasar de la versión 3 a la 4 de Xcode una de las cosas más molestas que nos hemos encontrado fue la forma de mostrar la documentación. Antes, al abrir la documentación de una clase, en el lado izquierdo de la ventana podíamos ver una especie de índice que nos permitía visualizar directamente la lista de métodos de clase y de instancia que tenía esa clase concreta y podíamos saltar directamente a ver la info de un método determinado, etc.

Con la salida del Xcode 4 esa tabla de contenidos desapareció (con el tiempo que nos ahorraba).

Resumiendo, para volver a mostrar esa tabla de contenidos en la documentación hay que ejecutar el siguiente comando en la terminal (recomiendo hacer un backup de los docsets por si algo sale mal):

sudo egrep -lRZ "Prototype.Browser.Xcode4OrNewer=Prototype.Browser.XcodeVersion<1000;" /Library/Developer/Documentation/DocSets | xargs -0 -L % sudo sed -i '' -e 's/Prototype\.Browser\.Xcode4OrNewer\=Prototype\.Browser\.XcodeVersion\<1000\;/Prototype\.Browser\.Xcode4OrNewer\=false\;/g'

Esta información se ha obtenido de este hilo de stackoverflow.

VN:F [1.9.8_1114]
Rating: 4.0/5 (4 votes cast)
VN:F [1.9.8_1114]
Rating: 0 (from 0 votes)
Tagged with:
mar 28

En muchas ocasiones necesitamos incrustrar vídeos youtube en nuestras apps.

Aquí les presentamos una clase que hemos programado que nos hace de reproductor de youtube.

Básicamente es una UIWebView con el html necesario para mostrar el vídeo.

Y se usuaría de la siguiente manera:

ZBYouTubeView *vid = [[ZBYouTubeView alloc] initWithFrame:self.bounds andUrl:@”http://www.youtube.com/watch?v=nmwIgF2gekY&feature=feedf”];

Es otra vista más que podemos añadir en cualquier sitio.

El tamaño del vídeo se adapta automáticamente si cambiamos el tamaño de la vista.

También se encarga de mostrar un UIActivityIndicatorView mientras carga el vídeo.

Cómo nos recuerdan en el primer comentario sólo funciona en el dispositivo por lo que si no véis nada en el simulador no os preocupéis.

Espero que les sea útil.

Descargar código

VN:F [1.9.8_1114]
Rating: 0.0/5 (0 votes cast)
VN:F [1.9.8_1114]
Rating: 0 (from 0 votes)
Tagged with:
nov 11

Hoy vengo con artículo muy corto y simple. En este artículo vamos a ver la forma más fácil de crear un color transparente.

He visto en el código de mucha gente en el mío cuando emepzaba usar lo siguiente para obtener un color transaparente:
[UIColor colorWithRed:1.0 green:1.0 blue:1.0 alpha:0.0]

Es decir, ponemos cualquier cosa en los componentes rojo, verde y azul pero en el alpa ponemos cero para conseguir un color transparente.

Pero los de Apple ya han pensado en que ese color es muy útil y se usa bastante y han creado un método específico para eso:

[UIColor clearColor]

Eso es todo por hoy.

VN:F [1.9.8_1114]
Rating: 4.8/5 (5 votes cast)
VN:F [1.9.8_1114]
Rating: +4 (from 4 votes)
Tagged with:
oct 07

Hace unos minutos descubri un error en una de mis aplicaciones y pensé que estaría bien comentarlo con el resto de la gente para que no cometan el mismo error.

Cuando intentamos enviar emails desde nuestras aplicaciones usando el MFMailComposeViewController podemos tener un problema si los usuarios no tienen configurada ninguna cuenta.

mail = [[MFMailComposeViewController alloc] init];
[mail setMessageBody:[NSString stringWithFormat:@"Texto del cuerpo"]  isHTML:YES];
mail.mailComposeDelegate = self;
[self presentModalViewController:mail animated:YES];
[mail release];

El problema con el código de arriba consiste en que si el usuario no tienen ninguna cuenta configurada por lo que el init del MFMailComposeViewController devolverá nil y al intentar mostrar la vista de mail ([self presentModalViewController:mail animated:YES]) la aplicación se cerrará.

Para evitar eso tenemos que comprobar que el mail no es nil antes de hacer nada. El código buenos sería este:

mail = [[MFMailComposeViewController alloc] init];
[mail setMessageBody:[NSString stringWithFormat:@"Texto del cuerpo"]  isHTML:YES];
mail.mailComposeDelegate = self;
if (mail !=nil)
    [self presentModalViewController:mail animated:YES];
else
   //Informar al usuario o lanzar la aplicación mail.
[mail release];
VN:F [1.9.8_1114]
Rating: 5.0/5 (4 votes cast)
VN:F [1.9.8_1114]
Rating: +6 (from 6 votes)
Tagged with:
sep 11

Con la aplicación OpenFeint y su game spotlight, tenemos al alcance de nuestra mano un nuevo juego gratuito cada día.

Hay muchas webs y apps que sirven para encontrar esas aplicaciones gratis o saber cuando pasan de ser de pago a gratuitas, para los amantes de los juegos OpenFeint es una aplicación que no les puede faltar, yo llevo usándola unas semanas y lo primero que hago cada mañana es bajarme el juego gratuito del día, son juegos que normalmente son de pago, por lo que nos ahorramos unos eurillos. La verdad es que apenas tengo tiempo de probar mínimamente los juegos que me bajo, pero se que al menos no pierdo la oportunidad de conseguirlos gratis.

Lo que me gusta del sistema OpenFeint, los logros y la faceta social de los rankings, amigos y demás opciones que nos ofrece.

Varemos si OpenFeint puede aguantar el embiste de Apple y su nuevo game center, conociendo a los de Apple estará muy bien hecho y va más allá de simples rankings mundiales ofreciendo posibilidades multi-jugador.

Consíguela aquí.

VN:F [1.9.8_1114]
Rating: 3.0/5 (1 vote cast)
VN:F [1.9.8_1114]
Rating: +3 (from 3 votes)
Tagged with:
sep 09

Apple afloja su mano dura y permite usar herramientas de terceros para desarrollar aplicaciones, esto implica que ahora se podrá programar no sólo en Objective-C, sino también usando otros entornos que nos permitan usar otro lenguaje de programación y obtener igualmente una aplicación funcional en iOS.

La única limitación que ponen es que la aplicación en si no descargue código de servidores externos, esta limitación esta para garantizar la seguridad.

No esta nada mal este nuevo enfoque ya que durante mucho tiempo ha sido uno de los puntos más criticados de Apple, su forma de mantener seguro su sistema lo hacía también poco accesible y muchas veces nada amigable para programadores sin conocimientos en Objective-C.

Otra novedad a destacar, es que Apple ha hecho público la guía que usan sus empleados en el proceso de aprobación de las aplicaciones, de esta manera los desarrolladores podemos saber como enfocar nuestras aplicaciones para asegurar su paso al App Store.

VN:F [1.9.8_1114]
Rating: 2.7/5 (3 votes cast)
VN:F [1.9.8_1114]
Rating: +2 (from 2 votes)
Tagged with:
sep 01

Hace algo más de una hora que ha acabado la Keynote de Apple del 1 de Septiembre, hay varias actualizaciones y algunas novedades en cuanto a los dispositivos de Apple, aquí os pongo algunas de las novedades más importantes:

iOS 4.1 con nuevas características, disponible la semana que viene:
– Solución de errores del sensor de proximidad
– Solución Bluetooth.
– Mejora del rendimiento en los iPhone 3G
– Subida de video en HD via Wifi
– Alquiler de vídeos
– Y el Game Center que se podía ver ya en los simuladores de iPhone

Sobre el Game Center:
– Multiplayer
– Retar a amigos
– Auto matching para jugar contra gente de tu nivel

iOS 4.2 sí, leéis bien, no solo hablan de una actualización del sistema sino de dos!! y esto es porque estará disponible para el iPad!! de esta forma se pondrá a la par con el sistema operativo del iPhone con la multitarea. iOS 4.2 estará disponible en Noviembre para el iPad.

Nuevos diseños para todos los iPods disponibles ya.

iPod Touch con multitouch, retina display, chip Apple A4, Giroscopio, Facetime con cámara frontal y cámara trasera para video en HD, un iPhone 4 pero sin telefono!!! Disponible la semana que viene y ya aceptan reservas.

iTunes 10, disponible hoy:
– Cambio de logo
– Funciones de red social, que están escuchando tus amigos…
– Listas con los gustos de tus amigos…

Nuevo Apple TV, de momento no disponible para España:
– Muy muy pequeño
– No se compran las cosas, se alquilan
– Sin descarga, se usa streaming, sin problemas de espacio.
– HDMI, Optical Audio, Ethernet, Wifi

VN:F [1.9.8_1114]
Rating: 0.0/5 (0 votes cast)
VN:F [1.9.8_1114]
Rating: 0 (from 0 votes)
Tagged with:
ago 31

Según la aplicación que estamos desarrollando, puede ser interesante o incluso necesario evitar que el iPhone se autobloquee mientras nuestra aplicación esta en marcha. Por suerte tenemos una manera muy sencilla de conseguirlo y con sólo una instrucción.

[UIApplication sharedApplication].idleTimerDisabled = YES;

Eso es todo lo que necesitamos para que el iPhone permanezca todo el tiempo encendido, un buen lugar para ponerlo es en el método applicationDidFinishLaunch: en nuestro UIApplication delegate.

Tened cuidado porque si el usuario sale corriendo y deja su iPhone solo, durante mucho tiempo, al dejar la pantalla encendida todo el rato, lo dejaremos sin batería.

VN:F [1.9.8_1114]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.8_1114]
Rating: +2 (from 2 votes)
Tagged with:
jul 28

Acabo de ver en EsferaIphone un video donde hacen un test entres los 4 distintos modelos de iPhone que existen actualmente.

Aunque el test no sea muy riguroso me ha parecido interesante y he decidido publicar el video aquí también.

Como habréis podido observar hay una gran diferencia entre los dos últimos modelos y los dos primeros.
Creo que tenemos que tener mucho en cuenta esta diferencia a la hora de hacer programas que necesiten muchos recursos y de entrada decidir que dispositivos soportará nuestra app.

VN:F [1.9.8_1114]
Rating: 0.0/5 (0 votes cast)
VN:F [1.9.8_1114]
Rating: +1 (from 1 vote)
Tagged with:
jul 26

En este artículo voy a poner el listado de programas que más uso para hacer seguimiento de las ventas de nuestras apps y también para hacer seguimiento de las posiciones de nuestras apps en los rankings de los diferentes AppStores del mundo.

Aquí va mi lista de apps que no tienen porque ser los mejores:

1. AppViz

Para mi es la mejor aplicación (para Mac OS) para seguir las ventas de tus aplicaciones. Básicamente lo que hace es conectarse a itunesconnect y obtener toda la información de las descargas y financial reports. Desde que la uso he dejado de conectarme a itunesconnect para ver las ventas del día anterior.

Lo mejor es la forma en la que muestra los datos. Puedes ver las listas de descargas, crearte diferentes gráficos por ventas, número de descargas, region, etc.

También te muestra los reviews que recibe tu app en los diferentes países entro otros.

Para mi es imprescindible y os lo recomiendo.

Cuesta 29.95$ y los vale. Se puede descargar una versión de evaluación de 30 días de forma gratuita.

2. App Sales

App Sales va en la misma línea de App Viz pero para iPhone. Igual que App Viz este programa nos muestro todos los datos de ventas, reviews e otros conectándose a nuestra cuenta de itunesconnect y obteniendo toda la información.

Es otra maravilla que uso siempre que no estoy delante del ordenador.

Además de todo es gratis y de código abierto. No está disponible en la AppStore ya que Apple no permite aplicaciones de este tipo en la appstore. Para instalarlo en nuestros iPhone tenemos que bajar el código (que viene como un proyecto XCode y no tenemos que configurar nada) y instalarlo mediante el XCode igual que hacemos con nuestros apps que programamos.

3. MajicRank

MajicRank se usa para ver la posición de nuestra app en los rankings mundiales de AppStore. Es decir, permite ver en que posición (tanto globalmente como en su categoría) está nuestra app en los diferentes países en tiempo real. Lo que hace es conectar a iTunes de diferentes países y buscar nuestra app en el top 100 de cada uno de los países de la AppStore. Al buscar sólo en el top 100 muestra sólo los rankings de los países en los que nuestra aplicación aparece en el top 100 de ese país (global o en su categoría).

Está app viene muy bien cuando lanzas una campaña de marketing y quieres seguir como evoluciona la posición de tu app.

También lo recomiendo mucho, se ha convertido en una app imprescindible para mi.

Es totalmente gratis.

4, PositionApp™

Como podemos intuir del nombre esta app también sirve para hacer seguimiento de nuestras (y de otros también) aplicaciones.

Permite ver como evoluciona nuestra app en los rankings mundiales y comprar tu evolución con la compentencia.

A diferencia de MajicRank esta aplicación hace seguimiento de las 300 primeras apps en vez de las 100 primeras y es para el iPhone. La desventaja respecto al MajicRank es que la información no se suministra en tiempo real sino con un retraso de entre 1-3 horas (a veces más) . Y no es gratis, en el momento de escribir esta entrada costaba 5,49€.

Está bastante bien, pero el precio que tiene también es de considerar.

Estas son las 4 apps que más uso (diariamente) pero existen muchas alteranitvas. Sobre todo servicios web que te ofrecen el mismo tipo de información que pueden ofrecer estas 4 aplicaciones que uso.

Espero que esta información les sea útil. Si conocéis alguna app que pueda ser útil para los programadores iPhone por favor comentadlo por aquí.

VN:F [1.9.8_1114]
Rating: 4.7/5 (3 votes cast)
VN:F [1.9.8_1114]
Rating: +6 (from 6 votes)
Tagged with:
preload preload preload