Ссылки на приложения для iOS с использованием xamarin.forms
Используя Xamarin.forms и получая AndroidAppLinks на NuGetPackages, я могу связать ссылки с моим приложением и заставить его открыть нужную мне страницу. Я пытаюсь сделать то же самое с iOS. По этому поводу у меня два вопроса:
- Существует ли такая вещь?
- Как мне это сделать?
Я уже переопределил метод protected override void OnAppLinkRequestReceived(Uri uri)
на App.xaml.cs, я также зарегистрировал запись с Application.Current.AppLinks.RegisterLink(entry)
и я попытался изменить Info.plist, добавив эту запись:
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLName</key>
<string>http://relacionamento.com.br/senha</string>
<key>CFBundleURLTypes</key>
<string>Viewer</string>
<key>CFBundleURLSchemes</key>
<array>
<string>example</string>
</array>
</dict>
</array>
Я попытался использовать заклепки, но я получил это для Android:
Код серьезности Описание Ошибка состояния подавления строки файла проекта Не удалось установить пакет Microsoft.Bcl.Build 1.0.14. Вы пытаетесь установить этот пакет в проект, который нацелен на 'MonoAndroid,Version=v6.0', но пакет не содержит никаких ссылок на сборки или файлов содержимого, совместимых с этой платформой. Для получения дополнительной информации свяжитесь с автором пакета. 0
И это для iOS:
Код серьезности Описание Ошибка состояния подавления строки файла проекта Не удалось установить пакет Microsoft.Bcl.Build 1.0.14. Вы пытаетесь установить этот пакет в проект, который нацелен на 'Xamarin.iOS,Version=v1.0', но пакет не содержит никаких ссылок на сборки или файлов содержимого, совместимых с этой платформой. Для получения дополнительной информации свяжитесь с автором пакета.
Пытаясь установить в формы, я получил:
Код серьезности Описание Ошибка состояния подавления строки файла проекта. Не удалось установить пакет 'Rivets 1.0.5'. Вы пытаетесь установить этот пакет в проект, который нацелен на '.NETPortable,Version=v4.5,Profile=Profile111', но пакет не содержит никаких ссылок на сборки или файлов содержимого, совместимых с этой платформой. Для получения дополнительной информации свяжитесь с автором пакета. 0
Должен ли я использовать заклепки? Что еще мне нужно, чтобы использовать эти ссылки?
С уважением
1 ответ
Эквивалент iOS App Links для iOS называется Universal Links и был представлен в iOS 9. Насколько мне известно, нет пакета Nuget для включения Universal Links на Xamarin, но есть довольно подробное пошаговое руководство по настройке всего, что доступно здесь.
Пакет Rivets предназначен для ссылок на приложения Facebook - совершенно другой стандарт, который, как оказалось, имеет одинаковое имя.
Альтернативой для одновременной работы со всеми этими вещами является платформа глубоких ссылок Branch.io (полное раскрытие: я в команде Branch). Это доступно как пакет Nuget, и вы можете найти полную документацию здесь.