Open ilyaklyukin opened 4 years ago
@ilyaklyukin you must write unit tests (with attachments passed values to afterTextChanged) for better investigating this issue.
Without it investigating this issue impossible.
The same issue. Appears on some devices if inputType in EditText is set. About 64 out of 2000 users had this error.
This is very similar to the following problem, see the link https://github.com/RedMadRobot/input-mask-android#inputmask-vs-androidinputtype-and-indexoutofboundsexception
implementation 'ru.tinkoff.decoro:decoro:1.5.0'
We see multiple crashes in Firebase crashlytics:
Fatal Exception: java.lang.StringIndexOutOfBoundsException: length=0; index=8 at java.lang.String.substring(String.java:2060) at ru.tinkoff.decoro.watchers.FormatWatcher.afterTextChanged(FormatWatcher.java:255) at android.widget.TextView.sendAfterTextChanged(TextView.java:11664) at android.widget.TextView$ChangeWatcher.afterTextChanged(TextView.java:14910) at android.text.SpannableStringBuilder.sendAfterTextChanged(SpannableStringBuilder.java:1277) at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:577) at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:507) at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:37) at android.view.inputmethod.BaseInputConnection.replaceText(BaseInputConnection.java:849) at android.view.inputmethod.BaseInputConnection.setComposingText(BaseInputConnection.java:618) at com.android.internal.view.IInputConnectionWrapper.executeMessage(IInputConnectionWrapper.java:393) at com.android.internal.view.IInputConnectionWrapper$MyHandler.handleMessage(IInputConnectionWrapper.java:89) at android.os.Handler.dispatchMessage(Handler.java:107) at android.os.Looper.loop(Looper.java:237) at android.app.ActivityThread.main(ActivityThread.java:7814) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1075)