Как указано в документации относительно bound services, a mBound
boolean используется для определения того, была ли служба связана с активностью. Вот выдержка из примера кода в документации:Уместно ли хранить флаг mBound при привязке услуги?
public class BindingActivity extends Activity {
LocalService mService;
boolean mBound = false;
private ServiceConnection mConnection = new ServiceConnection() {
public void onServiceConnected(ComponentName className, IBinder service) {
LocalBinder binder = (LocalBinder) service;
mService = binder.getService();
mBound = true;
}
}
Почему использовать дополнительный элемент, а не установка mService
к null
, если оно не связано? Мне кажется излишним и потенциально error-prone.
Это всего лишь образец реализации, вам нужно следовать принципам, а не деталям реализации. – pskink
@pskink Я знаю, но этот же шаблон используется во всех примерах, которые я просматривал, следовательно, вопрос. Так что нет уловов, спасибо! – piwi
в официальных служебных документах (http://developer.android.com/reference/android/app/Service.html), это еще лучше: см. 'Boolean mIsBound' и когда он установлен в' true' ... – pskink