Понимать Связанную Сервисную Документацию

Обратитесь к примеру в этой документации Bound Service: https://developer.android.com/guide/components/bound-services.html

Binder - это класс, реализующий интерфейс IBinder. Однако в примере я не могу понять, почему мы используем IBinder mBinder вместо Binder mBinder? Зачем усложнять IBinder? И зачем нам нужен класс LocalBinder для того, чтобы просто вернуть экземпляр LocalService?

1 ответ

Решение

Вам не нужно делать это таким образом. Если вы хотите сохранить LocalBinder, вы можете. Если вы хотите вернуть новый экземпляр Binder для каждой клиентской привязки, вы можете это сделать. Единственное, что вам нужно сделать, это вернуть ненулевое значение, если вы хотите, чтобы его можно было связать с вами (если вы хотите, чтобы служба работала только через startService, а не через bindService, вы можете просто вернуть null).

Другие вопросы по тегам