Archive for mayo, 2012

Deshabilitar multitarea en Apps iOS 4

Posted on mayo 25th, 2012 in Desarrollo iPhone | 156 Comments »

En ocasiones, puede ser interesante que la aplicación no se mantenga en memoria cuando el usuario presiona el botón Home del dispositivo. Por defecto, cuando el usuario vuelva a entrar, aparecerá en la misma vista en la que estaba cuando presionó el botón.

Esto está bien, pero en determinado tipo de aplicaciones, quizás nos interesa más sacar la aplicación de memoria que gestionar en cada vista el estado, de modo que, cuando volvamos, podamos mostrar al usuario aquello que ya tenía.

Para conseguir este comportamiento en nuestra App, basta con editar el fichero de propiedades (Info.plist) y añadir la siguiente propiedad con el valor “YES”:

"Application does not run in background"

Actualización:

Existe otra opción, aunque probablemente no será la recomendad por Apple. En nuestro AppDelegate, podemos forzar el cierro de la App cuando esta pase al modo background:

- (void)applicationDidEnterBackground:(UIApplication *)application
{
    exit(0);
}

Configurar ADB para usar Nexus S en linux

Posted on mayo 25th, 2012 in Desarrollo Android | 142 Comments »

Si, una vez conectado el teléfono por USB, este no es detectado, deberemos configurar udev tal que así:

1. Crear el fichero /etc/udev/rules.d/51-android.rules.

2. Añadir el siguiente contenido (como dice el título, esto es válido para el Nexus S):

 #      NEXUS S
 SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e21",
 SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e22", SYMLINK+="android_adb"
 SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e20", SYMLINK+="android_fastboot"

3. Ahora, en la línea de comandos, lanzamos lo siguiente:

 sudo chmod a+r /etc/udev/rules.d/51-android.rules

4. Reiniciamos y ya deberiamos ver nuestro dispositivo lanzando “adb devices” en la línea de comandos.

5. Una vez lanzado deberiamos ver algo tal que así

 List of devices attached
 3130F74D00E600EC	device

6. Si obtuviéramos una respuesta del siguiente tipo:

 List of devices attached
 ???????????? no permissions

Tendremos que lanzar adb con permisos de root:

 $ ./adb kill-server
 $ sudo ./adb start-server
 $ ./adb devices

En caso de tener que instalar otros dispositivos diferentes al Nexus S, puedes encontrar la configuración en http://developer.android.com/guide/developing/device.html.