Постоянство на моей UIPasteboard все еще активно, когда приложение удалено. Зачем? - PullRequest
6 голосов
/ 04 января 2012

Я использую класс UIPasteboard для использования данных с несколькими приложениями. В документе говорится, что постоянство удаляется при удалении приложения-создателя. Я делаю два приложения, одно для копирования, другое для прошлого:

приложение-создатель:

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

}

приложение для чтения:

-(IBAction)copy:(id)sender{

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

Я делаю текстовую копию в моем первом приложении, я вставляю во второе приложение, текст копируется, все хорошо. После этого я удаляю два приложения и переустанавливаю приложение для чтения. Я вставляю ... и более старая копия все еще доступна. Почему?

1 Ответ

5 голосов
/ 27 апреля 2012

После некоторых тестов я обнаружил, что он удалял UIPasteBoard, если его имя имеет ссылку с идентификатором пакета приложения.

Так что, если мой идентификатор пакета

com.test.MyTestApp

имя UIPasteBoard должно быть

@"com.test.MyTestApp.MyPasteBoard"

Тогда оно будет удалено. Это то, что испытало меня.

...