MacOS - создание расширения Finder Syn c с iCloud для iOS / MacOS - PullRequest
1 голос
/ 02 апреля 2020

Это очень теоретический вопрос, но для меня очень важно, как я подхожу к своим следующим шагам.

Я занимаюсь разработкой приложения SwiftUI MacOS, где пользователь может загружать свои файлы. Метаданные хранятся в CoreData, а файл, который я сохраняю, вручную в файловой системе. На данный момент я использую папку файлов по умолчанию для моего приложения.

Скоро я хочу синхронизировать iCloud c между моим приложением Ma c OSX и моим iOS приложением. Я читал об этом, и это должно работать. CoreData не должен быть проблемой.

Теперь на мой вопрос, можно ли подойти к нему таким образом, о котором я думаю:

Я хотел бы создать Finder Syn c Расширение для моего приложения Ma c OSX, поэтому я получаю собственную папку, которую можно добавить в избранное и наблюдать. Я хочу, чтобы все мои локальные файлы были сохранены там. Это должно работать ..

  • Смогу ли я синхронизировать c эти файлы, которые хранятся в расширении Finder Syn c с iCloud, в мое приложение iOS?
  • Могу ли я создать расширение на iOS, чтобы отобразить эти файлы?

Я не храню свои документы в BLOB-объекте данных CoreData или не допускаю внешнего хранилища. Я храню все вручную. Смогу ли я по-прежнему синхронизировать c мои документы с помощью iCloud.

В общем, я хочу знать, могу ли я хранить свои файлы в папке Finder, и при этом сохранять их синхронизированными с iCloud до iOS? Если это невозможно, пожалуйста, дайте мне знать. Было бы интересно узнать заранее.

1 Ответ

1 голос
/ 03 апреля 2020

A Finder Syn c Расширение не должно выполнять синхронизацию. Фактически, Apple особенно рекомендует использовать отдельный фоновый процесс для любой сетевой деятельности:

Обычно лучше, если расширение сосредоточено на обработке значков, контекстных меню и кнопок панели инструментов. Поместите в отдельную службу (элемент входа в систему или агент запуска) любой код, который выполняет синхронизацию c, обновляет состояние или связывается с удаленными источниками данных. Этот подход гарантирует, что работает только одна служба синхронизации.

https://developer.apple.com/library/archive/documentation/General/Conceptual/ExtensibilityPG/Finder.html

Расширение Finder Syn c используется для предоставления значков файлов, меню и других изменений пользовательского интерфейса Finder.

Добавление расширения Finder не дает вам папки, не говоря уже о синхронизации.

Вам необходимо предоставить папку и все детали песочницы, связанные с этим. Ваше основное приложение и / или фоновый процесс должны предоставлять службу синхронизации.

В итоге ваше основное приложение обрабатывает всю синхронизацию.

Расширение Finder только обновления пользовательский интерфейс для определенных папок. Он не обеспечивает никакой синхронизации. Поэтому любой вопрос о «синхронизации с iCloud» следует задавать независимо от контекста расширения Finder Syn c.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...