所以我已经成功实施了Xamarin.Auth for Google登录,并将其作为指南:
https://github.com/xamarin/Xamarin.Auth
现在,尝试为LinkedIn实现相同的功能,出于某种原因,自定义URL拦截器(用于深层链接),是否没有捕获重定向URI?
我已设置" https://www.linkedin.com/oauth-success"在我们的应用程序控制台上成为我的重定向URI,并将其用于Xamarin.Auth的身份验证器。它成功打开了本机UI浏览器并加载了LinkedIn登录页面,但是一旦用户登录,它们就会留在LinkedIn网站上,而不是路由回应用程序。
这是我的自定义url方案拦截器代码:
[Activity(Label = "ActivityCustomUrlSchemeInterceptor")]
[
IntentFilter
(
actions: new[] { Intent.ActionView },
Categories = new[]
{
Intent.CategoryDefault,
Intent.CategoryBrowsable
},
DataSchemes = new[]
{
"Sybrin.Mobile.OnBoarding.Droid.Sybrin.Mobile.OnBoarding.Droid",
"com.googleusercontent.apps.649780690715-0kajj7q0kgf40mc2fpct709cehgnei16",
"xamarin-auth",
"https://localhost",
"https",
},
DataHosts = new[]
{
"localhost",
"authorize",
"www.linkedin.com"
},
DataPaths = new[]
{
"/oauth2redirect",
"/oauth-success"
},
AutoVerify = true
)
]
有趣的是,当意图过滤器就是这样时,谷歌的深度链接中断,但当我注释掉DataHosts时,谷歌在登录后成功路由回到应用程序。
我希望我已经清楚了。任何帮助将不胜感激。