IOS Universal Links или URL Scheme для обмена информацией между приложениями - PullRequest
0 голосов
/ 10 декабря 2018

Я пытаюсь обмениваться информацией между несколькими приложениями.

Я знаю ограничение цепочек для ключей («Вы не можете напрямую делиться никакими ресурсами; каждое приложение находится в своей собственной« песочнице »и не может получить доступ к ресурсам каких-либодругое приложение. "), невозможно выполнить одно и то же поведение между двумя приложениями с командой разработчиков дифференцированных ...

Я искал информацию об универсальной ссылке или схеме URL, потому что вы можете добавить параметр в оба из них..

Я знаю, что обычно используется для перенаправления с веб-сайта URL в приложение, но есть ли способ использовать перенаправление, чтобы сделать что-то вроде:

appA -> URL сайта ->appB

  • пользователь автоматически перенаправляется из appA в appB, веб-сайт не имеет интерфейса, это только перенаправление -appA и appB - это 2 приложения из разных разработчиков, но они всегда установлены на устройстве.-У меня есть доступ к веб-сайту, и я могу загрузить что угодно (файл ассоциации сайта приложений Apple или что-нибудь еще)

Ответы [ 2 ]

0 голосов
/ 10 декабря 2018

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

Для универсальных ссылок необходимо выполнить некоторые настройки в коде мобильного приложения.Вы не можете сделать это в приложениях других поставщиков.

  • Альтернативным вариантом является схема URL:

Для связи с другими приложениями.Исходное приложение должно знать схему URL-адреса приложения-получателя, которая требует связи по схемам URL-адреса.

https://developer.apple.com/documentation/uikit/core_app/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app

0 голосов
/ 10 декабря 2018

Существует несколько способов обеспечения обмена данными между приложениями.

Если вы являетесь владельцем обоих приложений, используйте это:

1) Группы приложений - группа приложений создает безопасный контейнер, которыйнесколько процессов могут получить доступ.

a) Сначала включите «Группы приложений» из своей учетной записи разработчика.Создать профиль обеспечения.И включите общий доступ к группе приложений в обоих проектах в xcode

b) В первом приложении сохраните данные:

NSUserDefaults *dataContainer = [[NSUserDefaults alloc] initWithSuiteName:@"com.xxx.appgroupid"];
[dataContainer setObject:@"foo" forKey:@"bar"];

Во втором приложении получите данные:

NSUserDefaults *dataContainer = [[NSUserDefaults alloc] initWithSuiteName:@"com.xxx.appgroupid"];
NSLog(@"My value for key: %@",[dataContainer objectForKey:@"bar"]);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...