2011-02-01 22 views
5

Me gustaría saber si hay alguna forma de detectar si la biblioteca de música iphone ha cambiado cuando mi aplicación no se está ejecutando.Cómo detectar si el iphone está sincronizado cuando la aplicación no se está ejecutando

Hay una propiedad lastModifiedDate en la clase MPMediaLibrary que hace esto, pero el problema al que me enfrento es que esta fecha cambia incluso si el iPhone no está sincronizado. La fecha generalmente cambia si la lista de reproducción actual o la lista de reproducción actual se cambia en el iPod.

¿Hay alguna otra forma de detectar si el iPhone está sincronizado?

+0

Además, no estoy completamente seguro de cuándo el último día modificado se está modificando aparte del cambio en la lista de mensajes actual. – Dhawal

Respuesta

0

Puede utilizar el lastModifiedDate y cuando se cierra la aplicación, registre el estado de las listas de reproducción y luego cuando se abra la aplicación y haya cambiado el últimoModifiedDate: compare las listas de reproducción actuales y las anteriores.

+0

HI Alex, Gracias por su respuesta. El problema surge incluso si la lista de reproducción actual o la lista de reproducción actual se cambia en el iPod y ahora hay forma de obtener la lista de reproducción actual del iPod (si hay, házmelo saber). Por su método, puedo almacenar la lista de reproducción anterior (porque la lista de reproducción establece mi aplicación mientras existe) pero no puedo obtener la lista de reproducción actual para compararla. – Dhawal

0

Si un dispositivo se sincroniza con iTunes, borrará la carpeta tmp en todas las aplicaciones. Por lo tanto, puede crear un archivo en blanco en tmp, y la próxima vez que inicie la aplicación y encuentre que falta el archivo, el dispositivo debería haberse sincronizado. Para obtener la ruta de acceso de la carpeta tmp, use NSTemporaryDirectory()

+0

Gracias @Owen, lo comprobaré hoy – Dhawal

+0

HI, de nuevo. He intentado de esta manera, pero el archivo en el directorio temporal no se elimina cuando el iphone se sincroniza. Estoy probando en iOS 3.1.3 – Dhawal

+0

Encontré que hace unos años, en ese momento accidentalmente utilicé NSTemporaryDirectory() en lugar de NSHomeDirectory() y un archivo de guardado terminó guardado en /tmp/Documents/en lugar de /Documents /, que hacen que el archivo guardado se elimine cada vez que sincronizo el dispositivo. Ese fue un error que pasé durante una semana así que estoy bastante seguro de esto. Tal vez Apple cambió este comportamiento más adelante. – howanghk

Cuestiones relacionadas