What will happen when I call two Class.getInstance twice in the same method?
For example:
private void widgetListeners() {
notifyNews.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
if (notifyNews.isChecked()) {
FirebaseMessaging.getInstance().subscribeToTopic(getString(R.string.news_subscriber));
} else {
FirebaseMessaging.getInstance().unsubscribeFromTopic(getString(R.string.news_subscriber));
}
return true;
}
});
notifyVersion.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
if (notifyVersion.isChecked()) {
FirebaseMessaging.getInstance().unsubscribeFromTopic("Version");
} else {
FirebaseMessaging.getInstance().unsubscribeFromTopic(Version"));
}
return true;
}
});
}
Would it better if I call FirebaseMessaging.getInstance()
once at the top of the widgetListeners()
method body and store it in a variable or I just call in eachonPreferenceChange
or I stick to what I've already done above?
Note: I call widgetListeners()
in onCreateView
of a fragment that extends the PreferenceFragment
class.