Size: a a a

Android Architecture

2020 March 12

Kd

Konstantin dmz9 in Android Architecture
vitaly
Господа, такая ситуация:
есть у меня в прилаге во многих местах авторизация. Типа подтвердить действие, ну вы поняли. Тип авторизации выбирает пользователь, т.е. там может быть как кастомная, так и кейгардовый пин или скан или что угодно. Я всё это дело завернул в один объект, в который в месте, где мне нужно подтвердить действие, ставлю листенеры на результат авторизации и собсна запрашиваю авторизацию. И вот проблема в том, что там под капотом уродская до невозможности прокси-активити чтобы обрабатывать онАктивитиРезалт из всяких кейгардский штук.

Если ли способ сделать это по-человечески не привлекая уродство в виде активити-прокладки и в то же время независимо от текущего контекста, чтобы не копипастить ничего в onActivityResult (который не всегда, впрочем, доступен)?
способ есть, еще более уродский AuthResultFragment😂
источник

v

vitaly in Android Architecture
ещё более уродского не хотелось бы :)
источник

Kd

Konstantin dmz9 in Android Architecture
с активити неплохо выглядит способ, просто диспатчишь наверно неправильно
источник

Kd

Konstantin dmz9 in Android Architecture
у меня примерно такой же кейс в нескольких местах требуется вход и везде могут быть разные последовательности экранов
источник

v

vitaly in Android Architecture
ну так я не говорю, что оно не работает, работает оно хорошо, в принципе) Даже перегрузка с родительской активити есть, на случай если новую таску нельзя создавать, меня гложет то, что у меня целая активити есть, которая просто запускает другую))
источник

Kd

Konstantin dmz9 in Android Architecture
да эт нормально, уж лучше чем стек фрагментов городить
источник

v

vitaly in Android Architecture
ну, разумом-то я тоже понимаю, что без активити не вызову резалт, но хочется верить в чудо))
источник

Y

Yushka in Android Architecture
vitaly
Господа, такая ситуация:
есть у меня в прилаге во многих местах авторизация. Типа подтвердить действие, ну вы поняли. Тип авторизации выбирает пользователь, т.е. там может быть как кастомная, так и кейгардовый пин или скан или что угодно. Я всё это дело завернул в один объект, в который в месте, где мне нужно подтвердить действие, ставлю листенеры на результат авторизации и собсна запрашиваю авторизацию. И вот проблема в том, что там под капотом уродская до невозможности прокси-активити чтобы обрабатывать онАктивитиРезалт из всяких кейгардский штук.

Если ли способ сделать это по-человечески не привлекая уродство в виде активити-прокладки и в то же время независимо от текущего контекста, чтобы не копипастить ничего в onActivityResult (который не всегда, впрочем, доступен)?
если эт сделано как теневая активити, которая запускается, обрабатывает резалт и до свидания, то как по мне нормасный способ.
источник

Y

Yushka in Android Architecture
vitaly
ну так я не говорю, что оно не работает, работает оно хорошо, в принципе) Даже перегрузка с родительской активити есть, на случай если новую таску нельзя создавать, меня гложет то, что у меня целая активити есть, которая просто запускает другую))
ну..в смысле целая активити, которая запускает другую?… хоть одна то активити всё равно есть. пусть она и запускает
источник

v

vitaly in Android Architecture
Yushka
если эт сделано как теневая активити, которая запускается, обрабатывает резалт и до свидания, то как по мне нормасный способ.
"теневая активити" звучит круто, буду теперь так называть)
источник

Y

Yushka in Android Architecture
😁теперь сразу стало не уродским решение, да?))
источник

v

vitaly in Android Architecture
Yushka
ну..в смысле целая активити, которая запускает другую?… хоть одна то активити всё равно есть. пусть она и запускает
у меня бывает реквест авторизации из неконтекстных классов, поэтому "теневую активити" я и использу, как "ту хоть одну")
источник

v

vitaly in Android Architecture
Yushka
😁теперь сразу стало не уродским решение, да?))
ну, уже 2 человека сказали что норм, я немного успокоился
источник

Y

Yushka in Android Architecture
vitaly
"теневая активити" звучит круто, буду теперь так называть)
https://proandroiddev.com/say-no-to-baseactivity-and-basefragment-83b156ed8998
кажется, тут её так обозвали=)
источник

v

vitaly in Android Architecture
хех. Ну, я называл прокси-активити, потому что это как-бы частный случай использования прокси-объекта, и я тоже видел такое название, если я ничё не путаю

"техника теневой активити дракона небес "
источник

Sergey λ in Android Architecture
помню на хабре был перевод этой статьи(или подобной), в коментариях сказали, что это плохая практика и антипаттерн )
источник

Y

Yushka in Android Architecture
Sergey λ
помню на хабре был перевод этой статьи(или подобной), в коментариях сказали, что это плохая практика и антипаттерн )
ссыль?)почитать. ну или на словах, аргументация и альтернативы, которые там предложены были
источник

Sergey λ in Android Architecture
Yushka
ссыль?)почитать. ну или на словах, аргументация и альтернативы, которые там предложены были
источник

Kd

Konstantin dmz9 in Android Architecture
битва двух якодзун
источник

Sergey λ in Android Architecture
да и это “контингент” андроид хабра потому можно скипнуть 😏
источник