diff --git a/src/org/linphone/LinphoneService.java b/src/org/linphone/LinphoneService.java index d8ebf7b26..eb892693b 100644 --- a/src/org/linphone/LinphoneService.java +++ b/src/org/linphone/LinphoneService.java @@ -510,7 +510,7 @@ public final class LinphoneService extends Service implements LinphoneServiceLis sendNotification(IC_LEVEL_ORANGE, R.string.notification_registered); } - if (state == RegistrationState.RegistrationFailed || state == RegistrationState.RegistrationCleared) { + if ((state == RegistrationState.RegistrationFailed || state == RegistrationState.RegistrationCleared) && (LinphoneManager.getLc().getDefaultProxyConfig() == null || !LinphoneManager.getLc().getDefaultProxyConfig().isRegistered())) { sendNotification(IC_LEVEL_OFFLINE, R.string.notification_register_failure); } diff --git a/src/org/linphone/StatusFragment.java b/src/org/linphone/StatusFragment.java index a914cd1cc..401becc39 100644 --- a/src/org/linphone/StatusFragment.java +++ b/src/org/linphone/StatusFragment.java @@ -34,6 +34,7 @@ import org.linphone.ui.SlidingDrawer; import org.linphone.ui.SlidingDrawer.OnDrawerOpenListener; import android.app.Activity; +import android.content.Context; import android.content.SharedPreferences; import android.os.Bundle; import android.os.CountDownTimer; @@ -240,15 +241,19 @@ public class StatusFragment extends Fragment { } private String getStatusIconText(LinphoneCore.RegistrationState state) { + Context context = getActivity(); + if (!isAttached) + context = LinphoneActivity.instance(); + try { if (state == RegistrationState.RegistrationOk && LinphoneManager.getLcIfManagerNotDestroyedOrNull().getDefaultProxyConfig().isRegistered()) { - return getString(R.string.status_connected); + return context.getString(R.string.status_connected); } else if (state == RegistrationState.RegistrationProgress) { - return getString(R.string.status_in_progress); + return context.getString(R.string.status_in_progress); } else if (state == RegistrationState.RegistrationFailed) { - return getString(R.string.status_error); + return context.getString(R.string.status_error); } else { - return getString(R.string.status_not_connected); + return context.getString(R.string.status_not_connected); } } catch (Exception e) { e.printStackTrace();