Size: a a a

Android Developers

2020 July 26

M

Malik in Android Developers
Кирилл
Я хочу имплементнуть в okhttp Authenticator репозиторий ответственный за токен доступа к апи, чтобы если он истек, этот репозиторий сделал запрос на апи, обновил токен, а дальше авторизатор использовал новый токен. Проблема в том что репозиторию нужны эндпоинты к апи, которые создаются ретрофитом в конструкторе которого стоит авторизатор.

Получается рекурсия, что чтобы создать эндпоинты нужен ретрофит, чтобы создать ретрофит нужен авторизатор, чтобы создать авторизатор нужны эндпоинты. Может у кого есть идеи?
Полагаю, ты имел ввиду эндпоинты. Зачем тебе в фабрике ретрофита понадобился авторизатор и что такое этот авторизатор?
источник

К

Кирилл in Android Developers
Malik
Полагаю, ты имел ввиду эндпоинты. Зачем тебе в фабрике ретрофита понадобился авторизатор и что такое этот авторизатор?
Да, точно. Если точнее, не в фабрике ретрофита а в фабрике okhttpClient'а этого ретрофит инстанса; Авторизатор - реализация интерфейса Authenticator из OkHttp, который реагирует на 401 ошибку и выполняет нужную логику
источник

M

Malik in Android Developers
Кирилл
Да, точно. Если точнее, не в фабрике ретрофита а в фабрике okhttpClient'а этого ретрофит инстанса; Авторизатор - реализация интерфейса Authenticator из OkHttp, который реагирует на 401 ошибку и выполняет нужную логику
Первое просто решение в лоб - это сделать второй ретрофит и okhttp клиент чисто для работы Authenticator. Но это решение не кажется мне хорошим.
источник

К

Кирилл in Android Developers
В принципе, для запросов на апи работы с токенами какой либо авторизации не нужно, мб попробовать сделать второй ретрофит
источник

К

Кирилл in Android Developers
Malik
Первое просто решение в лоб - это сделать второй ретрофит и okhttp клиент чисто для работы Authenticator. Но это решение не кажется мне хорошим.
А, ну я об этом же подумал )
источник

AI

Arkadii Ivanov in Android Developers
Кирилл
Я хочу имплементнуть в okhttp Authenticator репозиторий ответственный за токен доступа к апи, чтобы если он истек, этот репозиторий сделал запрос на апи, обновил токен, а дальше авторизатор использовал новый токен. Проблема в том что репозиторию нужны эндпоинты к апи, которые создаются ретрофитом в конструкторе которого стоит авторизатор.

Получается рекурсия, что чтобы создать эндпоинты нужен ретрофит, чтобы создать ретрофит нужен авторизатор, чтобы создать авторизатор нужны эндпоинты. Может у кого есть идеи?
Используйте стандартный способ, выносите нужный функционал в отдельную сущность. Кажется, "создание енд поинтов" можно вынести, если я всё правильно понял. Ну или классический lazy, например сделать ретрофит в конструкторе репозитория lazy. Но последний способ - костыль.
источник

OT

Oleg Tarashkevich ☀️... in Android Developers
Кирилл
Я хочу имплементнуть в okhttp Authenticator репозиторий ответственный за токен доступа к апи, чтобы если он истек, этот репозиторий сделал запрос на апи, обновил токен, а дальше авторизатор использовал новый токен. Проблема в том что репозиторию нужны эндпоинты к апи, которые создаются ретрофитом в конструкторе которого стоит авторизатор.

Получается рекурсия, что чтобы создать эндпоинты нужен ретрофит, чтобы создать ретрофит нужен авторизатор, чтобы создать авторизатор нужны эндпоинты. Может у кого есть идеи?
Можно попробовать обновить токен в Interceptor. Вот первое что загуглилось:
https://gist.github.com/alex-shpak/da1e65f52dc916716930
источник

К

Кирилл in Android Developers
По идее должна быть та же проблема что и раньше. Да и зачем использовать Interceptor если Authenticator идеально подходит под мою задачу. Алсо создание второго ретрофита все поправило
источник

AS

Almas Shagdarov in Android Developers
Всем привет есть ли тут айосеры?
источник

AS

Almas Shagdarov in Android Developers
Срочно кто сможет помогите приложение при отправке на проверку в app store статус меняется на ошибка двоичного файла?
источник

S

Snap_Official in Android Developers
Кто может создать для меня мессенджер? Хотел с вами сотрудничать. Мессенджер будет общим. Или социальную сеть тоже можно. Проект будет общим с меня реклама проекта с вас сам проект.
Пк отсутствует.
источник

ФХ

Филадельфия Хачатуря... in Android Developers
Snap_Official
Кто может создать для меня мессенджер? Хотел с вами сотрудничать. Мессенджер будет общим. Или социальную сеть тоже можно. Проект будет общим с меня реклама проекта с вас сам проект.
Пк отсутствует.
Так можно было?
источник

AM

Alex Mostovoy in Android Developers
Так всегда можно было! Жаль, что я раньше о таком не подумал! Уже бы миллиардером стал!
источник

KT

Kate Trukhan in Android Developers
Добрый день, кто-нибудь может подсказать почему acessibilityservice при отрисовке жеста теряет часть точек?
источник

3

3h4k in Android Developers
Snap_Official
Кто может создать для меня мессенджер? Хотел с вами сотрудничать. Мессенджер будет общим. Или социальную сеть тоже можно. Проект будет общим с меня реклама проекта с вас сам проект.
Пк отсутствует.
Есть тех. задание?
источник

YK

Yuri Korshev in Android Developers
Almas Shagdarov
Срочно кто сможет помогите приложение при отправке на проверку в app store статус меняется на ошибка двоичного файла?
точное сообщение об ошибке какое?
источник

AS

Almas Shagdarov in Android Developers
Yuri Korshev
точное сообщение об ошибке какое?
Нету тока в статусе такая ошибка как можно узнать детальное описание?
источник

S

Snap_Official in Android Developers
3h4k
Есть тех. задание?
Нету. Без него никак? Просто цели есть озвучить могу.
источник

YK

Yuri Korshev in Android Developers
Snap_Official
Нету. Без него никак? Просто цели есть озвучить могу.
Да и отношения можно не регистрировать. Под честное слово все
источник

YK

Yuri Korshev in Android Developers
Almas Shagdarov
Нету тока в статусе такая ошибка как можно узнать детальное описание?
Там всегда пишут конкретную ошибку и прикладывают скриншоты
источник