ADAL v3.x с проектом UWP в приложении Xamarin forms

#authentication #xamarin #adal

#аутентификация #xamarin #adal

Вопрос:

Я пытаюсь использовать последнюю версию ADAL (v3.13.5) в приложении Xamarin Forms, используя руководство и образец, опубликованные здесь:

http://www.cloudidentity.com/blog/2015/07/22/using-adal-3-x-with-xamarin-forms/

Однако я замечаю, что не могу установить ADAL v3.x в проект UWP решения Xamarin Forms. Я вставил ошибки, которые я получаю, в вывод ниже.

Я также заметил ту же проблему, когда я пытаюсь установить ADAL v3.x в простом решении UWP. Похоже, что v2.28.2 — это последняя версия ADAL, которую я могу установить в любой проект UWP. Есть ли способ обойти это, чтобы я мог реализовать одну и ту же версию ADAL и, следовательно, одну и ту же реализацию аутентификации во всех трех проектах в приложении Xamarin Forms? На данный момент версия v2.x является единственной доступной опцией для ADAL в UWP?

Обнаружено понижение версии пакета: System.Text.RegularExpressions с 4.1.0 до 4.0.12 App1.UWP (> = 1.0.0) -> Microsoft.IdentityModel.Клиенты.ActiveDirectory (> = 3.13.5) -> System.Xml.ReaderWriter (> = 4.0.11) -> System.Text.RegularExpressions (> = 4.1.0) App1.UWP (> = 1.0.0) -> Microsoft.IdentityModel.Клиенты.ActiveDirectory (> = 3.13.5) -> System.Text.RegularExpressions (> = 4.0.12) Обнаружено понижение версии пакета: System.Text.RegularExpressions с 4.1.0 до 4.0.12 App1.UWP (> = 1.0.0) -> Microsoft.IdentityModel.Клиенты.ActiveDirectory (> = 3.13.5) -> System.Runtime.Сериализация.Json (> = 4.0.2) -> Система.Частное.Сериализация данных (>= 4.1.1) -> System.Text.RegularExpressions (> = 4.1.0) App1.UWP (> = 1.0.0) -> Microsoft.IdentityModel.Клиенты.Для системы обнаружен конфликт версий ActiveDirectory (> = 3.13.5) -> System.Text.RegularExpressions (> = 4.0.12).Коллекции. App1.UWP (> = 1.0.0) -> Microsoft.NETCore.UniversalWindowsPlatform (> = 5.0.0) -> System.Net.Sockets (> = 4.0.0) -> runtime.win.System.Net.Sockets (> = 4.1.0) -> System.Коллекции (> = 4.0.11) App1.UWP (> = 1.0.0) -> Microsoft.NETCore.UniversalWindowsPlatform (> = 5.0.0) -> Microsoft.NETCore.Runtime (> = 1.0.0) -> Microsoft.NETCore.Runtime.CoreCLR-arm (> = 1.0.0) -> Система.Коллекции (= 4.0.10). Не удалось восстановить пакет для ‘App1.UWP’. Не удалось восстановить пакет. Откат изменений пакета для ‘App1.UWP’.

Ответ №1:

Я не совсем уверен, поможет ли это, но проверьте профиль, на который нацелен ваш проект Xamarin. В ADAL 3.x удалена поддержка Windows Phone 8.1. Если ваш проект нацелен на профиль, включающий WP, вы не сможете установить ADAL.

Комментарии:

1. Спасибо. В моем проекте я уже следовал этим инструкциям: github.com/microsoftgraph/xamarin-csharp-connect-sample/wiki /. … Итак, я уже удалил эту цель. Проблема в том, что шаблон UWP загружает пакеты, которые имеют зависимости, конфликтующие с зависимостями ADAL v3.x, поэтому любая попытка установить ADAL v3.x завершается неудачей.

2. Интересно, я бы рекомендовал зарегистрировать проблему в библиотеке.

3. Выполнено. github.com/AzureAD/azure-activedirectory-library-for-dotnet/…

Ответ №2:

Это было исправлено в https://www.nuget.org/packages/Microsoft .IdentityModel.Клиенты.ActiveDirectory /3.13.7

Проблема заключалась в том, как были описаны зависимости nuget