Обеспечение только одного экземпляра RxBleClient
Возможно, я не правильно понимаю ситуацию, но нам сказали, что важно иметь только один экземпляр RxBleClient.
Разве это не легко сделать, сделав его статическим членом класса Application?
class MyApp extends Application {
static RxBleClient rxBleClient;
...
}
Кроме того, мне трудно понять этот код (из вашего класса приложения):
public static RxBleClient getRxBleClient(Context context) {
RxBleApp application = (RxBleApp) context.getApplicationContext();
return application.rxBleClient;
}
Не могли бы вы помочь мне понять, что он делает и почему? Почему это не может просто
return rxBleClient;
1 ответ
Это можно сделать, взяв статический член класса. Хотя это более элегантно, чтобы пройти через пример RxBleApp
что делает его более тестируемым (если были какие-либо тесты для части образца).
RxBleClient
упоминается в RxBleApp
который андроид Application
, Контекст приложения можно получить из Context
,