Можно ли перехватить перенаправление http://example.com/callback в intentFilter? - PullRequest
0 голосов
/ 17 января 2019

Я пытаюсь использовать Intent-Filter для захвата, когда браузер перенаправляется на страницу, подтверждающую процесс авторизации (окончательный URL для теста - "http://shapp.sytes.net:8080/callback/loginsuccessful?client_id=...".

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

Можно ли это сделать, и я что-то упускаю?

Попробовал несколько вариантов кода ниже. А также попытался начать свою деятельность через ADB. Получите эту ошибку: Ошибка: действие не запущено, не удалось разрешить Intent {act = android.intent.action.VIEW dat = http://shapp.sytes.net:2080/... flg = 0x10000000 pkg = com.companyname.oauthnativeflow}

[Activity(Label = "CustomUrlSchemeInterceptorActivity", NoHistory = true, 
LaunchMode = LaunchMode.SingleTop)]
[IntentFilter(
    new[] { Intent.ActionView },
    Categories = new[] { Intent.CategoryDefault, Intent.CategoryBrowsable },
    DataSchemes = new[] { "http"},
    DataHosts = new [] { "shapp.sytes.net:2080"},
    //DataPath = "/Callback",
    DataPathPrefix ="/callback")]
public class CustomUrlSchemeInterceptorActivity : Activity
{
    protected override void OnCreate(Bundle savedInstanceState)
    {
        base.OnCreate(savedInstanceState);

        // Convert Android.Net.Url to Uri
        var uri = new Uri(Intent.Data.ToString());

        // Load redirectUrl page
        AuthenticationState.Authenticator.OnPageLoading(uri);

        Finish();
    }
}

Точка останова в методе OnCreate никогда не активируется.

Есть мысли?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...