External Service Bind Use Case

Author: redirect11Created Dec 18, 2015Updated Sep 3, 2024
Labelsquestiondiscussion

Hi guys, i'm trying to implement the clean architecture into a big Android enterprise project since it fits perfectly in our needs. The only obscure thing it's about bind/unbind to external service (which expose an API trough AIDL). My question is: where the bind/unbind calls goes?

Our external services acts like a repository (method call -> callback with result) but it could push some data to the app occasionally (callback only).

So, in the use case where we pull data from service, this could fit into the data layer... about the second use case, when the service needs to push data, this goes in the data layer as well since some obeservable could notify about the changes to the service data (we use a memory cache which, once updated, notify about the new state).

In any way, for both to work this way, we need to bind to the external service interface: it's right to write use cases to handle this scenarios (like (un)registerForDataUpdates)?

Source: android10/Android-CleanArchitecture