From 26e4ca01318064fe137cff1b1168ed2c9d8a18b8 Mon Sep 17 00:00:00 2001 From: Erwan Croze Date: Mon, 14 Nov 2016 16:54:18 +0100 Subject: [PATCH] Change time seconds to milliseconds to match with Android timestamp --- res/values/non_localizable_custom.xml | 4 ++-- src/org/linphone/AccountPreferencesFragment.java | 1 + src/org/linphone/LinphoneActivity.java | 6 ++---- src/org/linphone/LinphoneManager.java | 16 +++++++++++----- .../linphone/assistant/AssistantActivity.java | 5 ++++- .../assistant/CreateAccountFragment.java | 8 +++++++- 6 files changed, 27 insertions(+), 13 deletions(-) diff --git a/res/values/non_localizable_custom.xml b/res/values/non_localizable_custom.xml index b6cfed34a..086424319 100644 --- a/res/values/non_localizable_custom.xml +++ b/res/values/non_localizable_custom.xml @@ -12,7 +12,7 @@ true - 86400 + 86400000 true @@ -38,7 +38,7 @@ false 5 - 86400 + 86400000 true diff --git a/src/org/linphone/AccountPreferencesFragment.java b/src/org/linphone/AccountPreferencesFragment.java index 7f7b49f8f..1f0b8fab4 100644 --- a/src/org/linphone/AccountPreferencesFragment.java +++ b/src/org/linphone/AccountPreferencesFragment.java @@ -262,6 +262,7 @@ public class AccountPreferencesFragment extends PreferencesListFragment implemen Intent assistant = new Intent(); assistant.setClass(LinphoneActivity.instance(), AssistantActivity.class); assistant.putExtra("LinkPhoneNumber", true); + assistant.putExtra("FromPref", true); startActivity(assistant); return true; } diff --git a/src/org/linphone/LinphoneActivity.java b/src/org/linphone/LinphoneActivity.java index bac44ec2b..6b0cb7aae 100644 --- a/src/org/linphone/LinphoneActivity.java +++ b/src/org/linphone/LinphoneActivity.java @@ -230,9 +230,7 @@ public class LinphoneActivity extends Activity implements OnClickListener, Conta if(getResources().getBoolean(R.bool.use_phone_number_validation)) { if (state.equals(RegistrationState.RegistrationOk)) { - if (LinphonePreferences.instance().getLinkPopupTime() == null || (LinphonePreferences.instance().getLinkPopupTime() != null)) { - LinphoneManager.getInstance().isAccountWithAlias(); - } + LinphoneManager.getInstance().isAccountWithAlias(); } } @@ -1743,7 +1741,7 @@ public class LinphoneActivity extends Activity implements OnClickListener, Conta public void displayInappNotification(String date) { Timestamp now = new Timestamp(new Date().getTime()); - if (LinphonePreferences.instance().getInappPopupTime() != null && Long.parseLong(LinphonePreferences.instance().getInappPopupTime()) < now.getTime()) { + if (LinphonePreferences.instance().getInappPopupTime() != null && Long.parseLong(LinphonePreferences.instance().getInappPopupTime()) > now.getTime()) { return; } else { long newDate = now.getTime() + getResources().getInteger(R.integer.time_between_inapp_notification); diff --git a/src/org/linphone/LinphoneManager.java b/src/org/linphone/LinphoneManager.java index 761f757a6..67b5649b9 100644 --- a/src/org/linphone/LinphoneManager.java +++ b/src/org/linphone/LinphoneManager.java @@ -37,6 +37,7 @@ import java.util.List; import java.util.Timer; import java.util.TimerTask; +import org.linphone.assistant.AssistantActivity; import org.linphone.core.CallDirection; import org.linphone.core.LinphoneAccountCreator; import org.linphone.core.LinphoneAddress; @@ -1451,9 +1452,9 @@ public class LinphoneManager implements LinphoneCoreListener, LinphoneChatMessag public void isAccountWithAlias(){ if(LinphoneManager.getLc().getDefaultProxyConfig() != null) { - Timestamp now = new Timestamp(new Date().getTime()); + long now = new Timestamp(new Date().getTime()).getTime(); if (LinphonePreferences.instance().getLinkPopupTime() == null - || Long.parseLong(LinphonePreferences.instance().getLinkPopupTime()) > now.getTime()) { + || Long.parseLong(LinphonePreferences.instance().getLinkPopupTime()) < now) { accountCreator.setUsername(LinphonePreferences.instance().getAccountUsername(LinphonePreferences.instance().getDefaultAccountIndex())); accountCreator.isAccountUsed(); } @@ -1463,8 +1464,9 @@ public class LinphoneManager implements LinphoneCoreListener, LinphoneChatMessag } private void askLinkWithPhoneNumber(){ - Timestamp now = new Timestamp(new Date().getTime()); - long newDate = now.getTime() + LinphoneActivity.instance().getResources().getInteger(R.integer.popup_time_interval); + long now = new Timestamp(new Date().getTime()).getTime(); + long future = new Timestamp(LinphoneActivity.instance().getResources().getInteger(R.integer.popup_time_interval)).getTime(); + long newDate = now + future; LinphonePreferences.instance().setLinkPopupTime(String.valueOf(newDate)); @@ -1477,7 +1479,11 @@ public class LinphoneManager implements LinphoneCoreListener, LinphoneChatMessag delete.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - LinphoneManager.getInstance().displayLinkPhoneNumber(); + Intent assistant = new Intent(); + assistant.setClass(LinphoneActivity.instance(), AssistantActivity.class); + assistant.putExtra("LinkPhoneNumber", true); + assistant.putExtra("LinkPhoneNumberAsk", true); + mServiceContext.startActivity(assistant); dialog.dismiss(); } }); diff --git a/src/org/linphone/assistant/AssistantActivity.java b/src/org/linphone/assistant/AssistantActivity.java index a706ab6b6..46096b8d0 100644 --- a/src/org/linphone/assistant/AssistantActivity.java +++ b/src/org/linphone/assistant/AssistantActivity.java @@ -83,7 +83,7 @@ private static AssistantActivity instance; private AssistantFragmentsEnum firstFragment; private Fragment fragment; private LinphonePreferences mPrefs; - private boolean accountCreated = false, newAccount = false, isLink = false; + private boolean accountCreated = false, newAccount = false, isLink = false, fromPref = false; private LinphoneCoreListenerBase mListener; private LinphoneAddress address; private StatusFragment status; @@ -112,6 +112,8 @@ private static AssistantActivity instance; if (getIntent().getBooleanExtra("LinkPhoneNumber",false)) { isLink = true; + if (getIntent().getBooleanExtra("FromPref",false)) + fromPref = true; displayCreateAccount(); } else { firstFragment = getResources().getBoolean(R.bool.assistant_use_linphone_login_as_first_fragment) ? AssistantFragmentsEnum.LINPHONE_LOGIN : AssistantFragmentsEnum.WELCOME; @@ -400,6 +402,7 @@ private static AssistantActivity instance; fragment = new CreateAccountFragment(); Bundle extra = new Bundle(); extra.putBoolean("LinkPhoneNumber", isLink); + extra.putBoolean("LinkFromPref", fromPref); fragment.setArguments(extra); changeFragment(fragment); currentFragment = AssistantFragmentsEnum.CREATE_ACCOUNT; diff --git a/src/org/linphone/assistant/CreateAccountFragment.java b/src/org/linphone/assistant/CreateAccountFragment.java index aac31f0aa..2950c1149 100644 --- a/src/org/linphone/assistant/CreateAccountFragment.java +++ b/src/org/linphone/assistant/CreateAccountFragment.java @@ -39,6 +39,7 @@ import android.accounts.AccountManager; import android.app.AlertDialog; import android.app.Fragment; import android.content.Context; +import android.content.Intent; import android.os.Build; import android.os.Bundle; import android.telephony.TelephonyManager; @@ -302,7 +303,12 @@ public class CreateAccountFragment extends Fragment implements CompoundButton.On } case R.id.assistant_skip: { - AssistantActivity.instance().success(); + if (getArguments().getBoolean("LinkFromPref")) { + startActivity(new Intent().setClass(AssistantActivity.instance(), LinphoneActivity.class)); + AssistantActivity.instance().finish(); + } else { + AssistantActivity.instance().success(); + } break; }