Обложка канала

iOS Dev

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

iOS Dev

4 года назад
Открыть в
⌨️ Как можно передавать данные между приложениями iOS? Полегче, посложнее и для хакермэнов. Недавно в одном чате увидел такой вопрос, и вспомнил, что раньше и у самого были некоторые похожие задачи. Попробовал структурировать способы, и покопался в разных источниках. Что вышло в итоге, вы можете увидеть в этом посте. Внимание, способы содержат как довольно очевидные решения, так и те, которые можно назвать безумными. 🔘 App Groups, пожалуй, самое очевидное из списка, и содержащее свой принцип в названии. 🔘 UIActivityViewController — возможно и не первое, что приходит на ум, но существующее решение. Поддерживается с iOS 6.0+ и реализуется с помощью application:openURL:sourceApplication:annotation:. 🔘 Custom URL Schemes. Чтобы включить схему URL-адресов в нашем приложении, мы должны добавить пользовательскую схему URL-адресов на вкладку информации. Откройте, например, Safari и введите [URL_scheme]://параметр, чтобы открыть ваше приложение. 🔘 Share Extension. iOS 8.0+. Это тип расширений, как, например Today, Action, Custom Keyboard и так далее. Позволяет хранить данные в общей группе, к которой могут получить доступ другие приложения, входящие в набор приложений. Все приложения, которые совместно используют доступ к связке ключей, должны использовать один и тот же префикс айдишника приложения. 🔘 Shared Keychain Access. iOS 3.0+. Связку ключей можно использовать в нескольких приложениях iOS, если они опубликованы одним и тем же разработчиком и при определенных условиях. 🔘 Custom Pasteboards. iOS 3.0+. Другой объект в том же или другом приложении считывает данные из pasteboard и представляет их пользователю в новом месте; обычно это происходит, когда пользователь запрашивает операцию вставки. В этом твиттер-треде разработчик делится своим опытом использования этого решения. 🔘 Darwin Notification Center (в этой статье есть и пример использования, и даже код). 🟡 iOS Photos! Что? Да! Посмотрите, как в этом репозитории нашли изысканное решение, хотя и может возникнуть два вопроса. @iOS Dev — шарим данные (и пост 😎).