oauth 2.0 авторизация не работает в App Auth Android - PullRequest
0 голосов
/ 25 июня 2019

Я внедряю аутентификацию с использованием идентификатора, используя библиотеку аутентификации приложения. Я могу видеть страницу авторизации, когда использую URI перенаправления так же, как и приложение веб-страницы. Но когда я использую пользовательскую схему перенаправления в качестве URL перенаправления, я не могу просмотреть страницу авторизации. Это просто мигает загрузка страницы авторизации и перенаправить обратно в мое приложение. Как это исправить? Мне нужно показать страницу входа. и после входа мне нужно перенаправить обратно в мое приложение.

файл Gradle

    implementation 'net.openid:appauth:0.3.0'

Вот мой файл манифеста

   <activity
        android:name=".Activities.LauncherActivity"
        android:label="@string/app_name"
        android:screenOrientation="portrait">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
        <intent-filter>
            <action android:name="com.example.HANDLE_AUTHORIZATION_RESPONSE"/>
            <category android:name="android.intent.category.DEFAULT"/>
        </intent-filter>
    </activity>

    <activity android:name="net.openid.appauth.RedirectUriReceiverActivity">
        <intent-filter>
            <action android:name="android.intent.action.VIEW"/>
            <category android:name="android.intent.category.DEFAULT"/>
            <category android:name="android.intent.category.BROWSABLE"/>
            <data android:scheme="com.example.android"
               />
        </intent-filter>
    </activity>

Моя активность

 public void performAuthorizationRequest() {

    Uri authorizationEndpoint = Uri.parse("https://login.com:446/v1.1.0_23/connect/authorize");
    Uri tokenEndpoint = Uri.parse("https://tokene.endpoint.com/token");
    String clientId = "clients";
    String responseType = "id_token token";
//        Uri redirectUri = Uri.parse("http://dev.login.com/dashboard");

    Uri redirectUri = Uri.parse("connect.cantiz.com.connectsmartconfigandroid:/oauthcallback");
    AuthorizationService service = new AuthorizationService(this);
     request = new AuthorizationRequest.Builder(new AuthorizationServiceConfiguration(authorizationEndpoint,tokenEndpoint,
                    null), clientId, responseType, redirectUri)
         .setScopes("openid scope/auth")
            .build();
    service.performAuthorizationRequest(request,
            PendingIntent.getActivity(this,
                    request.hashCode(),
                    new Intent(AUTHORIZATION_ACTION),
                    0));
    service.dispose();


}

всякий раз, когда я запускаю этот код, я не могу загрузить конечную точку авторизации. Пожалуйста, помогите.

...