@@ -42,6 +42,7 @@ class LoginActivity : AppCompatActivity() {
4242
4343 override fun onResume () {
4444 super .onResume()
45+ setPhoneNumber()
4546 }
4647
4748 private fun registerListeners () {
@@ -160,8 +161,8 @@ class LoginActivity : AppCompatActivity() {
160161 }
161162
162163 if (
163- ! PhoneNumberUtils .isWellFormedSmsAddress(phoneNumber.text.toString()) ||
164- ! PhoneNumberUtils .isGlobalPhoneNumber(phoneNumber.text.toString())
164+ ! PhoneNumberUtils .isWellFormedSmsAddress(phoneNumber.text.toString().trim() ) ||
165+ ! PhoneNumberUtils .isGlobalPhoneNumber(phoneNumber.text.toString().trim() )
165166 ) {
166167 Timber .e(" [SIM1] phone number [${phoneNumber.text.toString()} ] is not valid" )
167168 resetView()
@@ -171,8 +172,8 @@ class LoginActivity : AppCompatActivity() {
171172
172173 if (
173174 SmsManagerService .isDualSIM(this ) && (
174- ! PhoneNumberUtils .isWellFormedSmsAddress(phoneNumberSIM2.text.toString()) ||
175- ! PhoneNumberUtils .isGlobalPhoneNumber(phoneNumberSIM2.text.toString())
175+ ! PhoneNumberUtils .isWellFormedSmsAddress(phoneNumberSIM2.text.toString().trim() ) ||
176+ ! PhoneNumberUtils .isGlobalPhoneNumber(phoneNumberSIM2.text.toString().trim() )
176177 )
177178 ) {
178179 Timber .e(" [SIM2] phone number [${phoneNumberSIM2.text.toString()} ] is not valid" )
@@ -214,17 +215,11 @@ class LoginActivity : AppCompatActivity() {
214215 Settings .setApiKeyAsync(this , apiKey.text.toString())
215216 Settings .setServerUrlAsync(this , serverUrl.text.toString().trim())
216217
217- val e164PhoneNumber = PhoneNumberUtils .formatNumberToE164(
218- phoneNumber.text.toString(),
219- this .resources.configuration.locales.get(0 ).country
220- )
218+ val e164PhoneNumber = formatE164(phoneNumber.text.toString().trim())
221219 Settings .setSIM1PhoneNumber(this , e164PhoneNumber)
222220
223221 if (SmsManagerService .isDualSIM(this )) {
224- val sim2PhoneNumber = PhoneNumberUtils .formatNumberToE164(
225- phoneNumberSIM2.text.toString(),
226- this .resources.configuration.locales.get(0 ).country
227- )
222+ val sim2PhoneNumber = formatE164(phoneNumberSIM2.text.toString().trim())
228223 Settings .setSIM2PhoneNumber(this , sim2PhoneNumber)
229224 }
230225
@@ -240,6 +235,19 @@ class LoginActivity : AppCompatActivity() {
240235 }.start()
241236 }
242237
238+ private fun formatE164 (number : String ): String {
239+ return PhoneNumberUtils .formatNumberToE164(
240+ addPlus(number.trim()),
241+ this .resources.configuration.locales.get(0 ).country
242+ )
243+ }
244+
245+ private fun addPlus (number : String ): String {
246+ if (number.startsWith(" +" )) {
247+ return number
248+ }
249+ return " +$number "
250+ }
243251
244252 private fun redirectToMain () {
245253 if (! Settings .isLoggedIn(this )) {
0 commit comments