Реально ли расширить Xamarin.Auth или Xamarin.Social для поддержки родного входа в iOS 6 с резервированием в Safari?
У нас есть приложение, которое использует Facebook SDK для входа в систему.
Мы поддерживаем встроенный вход в iOS 6 с резервным доступом к приложениям Facebook и Safari.
Мы добавляем поддержку Twitter в ближайшее время.
Мы также хотим реализовать вход в iOS 6 с резервным Safari для него.
Есть ли какой-либо код в Xamarin.Auth или Xamarin.Social, который мы можем использовать повторно, или нам нужно написать его с нуля? Нам нужно иметь возможность получать токены доступа, хранить их и проверять подлинность запросов.
Я попытался написать свой собственный аутентификатор для Xamarin.Auth, но его дизайн настаивает на том, чтобы я предоставлял контроллер представления для аутентификации, тогда как мне нужно либо показать диалог аутентификации iOS 6, либо Safari.
2 ответа
Xamarin.Auth.Authenticator
подклассы - это отдельные методы аутентификации, встроенного резервного механизма не существует. Вам нужно будет выбрать, хотите ли вы использовать native или safari ранее в процессе, а затем использовать соответствующие Authenticator
для этого.
Authenticator
s предоставляют пользователям как средство предоставления информации (например, через веб-страницу, используя WebRedirectAuthenticator
) и для получения токенов пользователя и другой информации. OAuth2Authenticator
, например, использует WebRedirectAuthenticator
чтобы перейти на страницу авторизации, а затем получить токены доступа из перенаправления.
Xamarin. Социальное использование Authenticator
когда вы открываете страницу создания общего доступа и должны пройти аутентификацию и вместе с Xamarin.Auth использует Authenticator
В его составление запросов включается необходимая авторизационная информация.