android10 / android10/Android-CleanArchitecture-Kotlin

Integration with APIs which return the result in `onActivityResult()`

Aperta
#18 0 commenti 1 reazione 0 assegnatari Vedi su GitHub
discussion question
Lingua principale
Kotlin
Stelle
4.8k
Fork
929
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Hi,

How do you add integration with SDKs that deliver the result to `onActivityResult` method of fragment/activity? For example if you'd like to implement Authentication via Facebook SDK you would:

1. Create a [CallbackManager](https://developers.facebook.com/docs/reference/android/current/interface/CallbackManager/)
2. Register it via `registerCallback()` of [LoginManager](https://developers.facebook.com/docs/reference/android/current/class/LoginManager/) and pass a [FacebookCallback](https://developers.facebook.com/docs/reference/android/current/interface/FacebookCallback/) there,
3. Pass the arguments received in `onActivityResult()` to the callback manager created in the step 1.

Then if you call `LoginManager.getInstance().logInWithReadPermissions(fragment/activity, permissions)` you will get your callback called with the result.

Besides of that, you shouldn't forget about unregistering callbacks when you're done. All of this brings quite strong coupling between components. Are there any ideas on how to keep the **Dependency rule** in place?

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.