2012-01-04 18 views
6

Uso la clase UIPasteboard para usar datos con varias aplicaciones. El documento dice que la persistencia se elimina cuando la aplicación del creador se desinstala. Hago dos aplicaciones, una para la copia, el otro por el pasado: appLa persistencia en mi UIPasteboard aún está activa cuando la aplicación se desinstala. ¿por qué?

creador:

-(IBAction)paste:(id)sender{ 
    UIPasteboard* pb = [UIPasteboard pasteboardWithName:@"mytext" create:YES]; 
    tv_pasting.text = pb.string; 

} 

lector de aplicación:

-(IBAction)copy:(id)sender{ 

    UIPasteboard* pb = [UIPasteboard pasteboardWithName:@"mytext" create:YES]; 
    pb.persistent = YES; 
    pb.string = tf_copy.text; 
} 

hago una copia de texto en mi primera aplicación, pego en mi segunda aplicación, el texto está copiado, todo está bien. Después, desinstalo mis dos aplicaciones y vuelvo a instalar la aplicación del lector. Yo pego ... y la copia más vieja todavía está disponible. Por qué ?

Respuesta

5

Después de algunas pruebas, descubrí que eliminó UIPasteBoard si el nombre tiene un vínculo con el identificador de paquete de la aplicación.

Así que si mi identificador de paquete es

com.test.MyTestApp 

el nombre UIPasteBoard debe ser

@"com.test.MyTestApp.MyPasteBoard" 

Entonces será eliminado. Esto es lo que me probó la prueba.

Cuestiones relacionadas