iOS 13- Как я могу открыть другое приложение и передать ему файл? - PullRequest
0 голосов
/ 11 марта 2020

У меня есть приложение для рисования, и из-за некоторых серьезных структурных изменений (в основном PencilKit) я внедряю совершенно новое приложение для версии 2. Документы, созданные в версии 1, будут доступны только для чтения в версии 2.

Я реализовал UIActivityViewController в обеих версиях, чтобы я мог успешно переместить документ из версии 1 в версию 2. Хотя я хотел бы сделать еще один вариант - напрямую открыть документ версии 1 в версии 2 без представления активности. контроллер выскакивает. Я делюсь с помощью URL-адреса файла и вижу, как реализовать открытие приложения с помощью схемы URL-адреса, но я не уверен, могу ли я открыть с помощью схемы URL-адреса И иметь ли URL-адрес как пользовательскую схему, так и ссылку на файл.

1 Ответ

1 голос
/ 13 марта 2020

Мне удалось заставить это работать, используя AppGroup, содержащую мои старые и новые приложения. Это дало мне общую область для сохранения и извлечения файлов. После того, как я зарегистрировал оба приложения в группе приложений в XCode, я мог записывать файлы в общий каталог следующим образом:

    if let sharedURL = fileManager.containerURL(forSecurityApplicationGroupIdentifier: "group.mycompany.appgroupname") {   <read or write the files in here> }

Затем я открыл пользовательский URL-адрес, содержащий путь к файлу или термин " ALL_FILES "например" myapp: //private/where/apple/put/my/files/file1.ext ". или "myapp: // ALL_FILES", и новое приложение будет анализировать URL-адрес, чтобы решить, что делать.

...