Android Studio 3.1 EditText StackOverflowError

雨燕双飞 提交于 2019-11-26 12:57:07

问题


After updating to Android Studio 3.1 I\'m facing exception when EditText in focus

E/AndroidRuntime: FATAL EXCEPTION: main
Process: <package>, PID: 18938
java.lang.StackOverflowError: stack size 8MB
    at android.view.inputmethod.InputConnectionWrapper.getTextBeforeCursor(InputConnectionWrapper.java:46)
    at android.view.inputmethod.InputConnectionWrapper.getTextBeforeCursor(InputConnectionWrapper.java:46)
    at android.view.inputmethod.InputConnectionWrapper.getTextBeforeCursor(InputConnectionWrapper.java:46)
    at android.view.inputmethod.InputConnectionWrapper.getTextBeforeCursor(InputConnectionWrapper.java:46)
    at android.view.inputmethod.InputConnectionWrapper.getTextBeforeCursor(InputConnectionWrapper.java:46)
    at android.view.inputmethod.InputConnectionWrapper.getTextBeforeCursor(InputConnectionWrapper.java:46)
    at android.view.inputmethod.InputConnectionWrapper.getTextBeforeCursor(InputConnectionWrapper.java:46)
    at android.view.inputmethod.InputConnectionWrapper.getTextBeforeCursor(InputConnectionWrapper.java:46)
    at android.view.inputmethod.InputConnectionWrapper.getTextBeforeCursor(InputConnectionWrapper.java:46)
    at android.view.inputmethod.InputConnectionWrapper.getTextBeforeCursor(InputConnectionWrapper.java:46)
    at android.view.inputmethod.InputConnectionWrapper.getTextBeforeCursor(InputConnectionWrapper.java:46)
    at android.view.inputmethod.InputConnectionWrapper.getTextBeforeCursor(InputConnectionWrapper.java:46)
    at android.view.inputmethod.InputConnectionWrapper.getTextBeforeCursor(InputConnectionWrapper.java:46)
    at android.view.inputmethod.InputConnectionWrapper.getTextBeforeCursor(InputConnectionWrapper.java:46)
    at android.view.inputmethod.InputConnectionWrapper.getTextBeforeCursor(InputConnectionWrapper.java:46)
    at android.view.inputmethod.InputConnectionWrapper.getTextBeforeCursor(InputConnectionWrapper.java:46)
    at android.view.inputmethod.InputConnectionWrapper.getTextBeforeCursor(InputConnectionWrapper.java:46)
    at android.view.inputmethod.InputConnectionWrapper.getTextBeforeCursor(InputConnectionWrapper.java:46)
    at android.view.inputmethod.InputConnectionWrapper.getTextBeforeCursor(InputConnectionWrapper.java:46)

Any idea how to fix this?

Update:

After some research I found out that StackOverflowError appears with different stacktraces with simple EditText:

<EditText
android:id=\"@+id/editText\"
android:layout_width=\"match_parent\"
android:layout_height=\"wrap_content\"
app:layout_constraintTop_toTopOf=\"parent\"/>

When trying to enter any symbol I get:

E/AndroidRuntime: FATAL EXCEPTION: main
Process: <package>, PID: 21122
java.lang.StackOverflowError: stack size 8MB
    at android.view.inputmethod.InputConnectionWrapper.beginBatchEdit(InputConnectionWrapper.java:106)

When I press back:

E/AndroidRuntime: FATAL EXCEPTION: main
Process: <package>, PID: 21280
java.lang.StackOverflowError: stack size 8MB
    at android.view.inputmethod.InputConnectionWrapper.finishComposingText(InputConnectionWrapper.java:78)

Even entering text in WebView causing this error

In AS 3.0 EditText\'s worked normal


回答1:


As @evi pointed out there is a bug in advanced profiling.

For now disabling it (Edit configuration settings -> Profiling -> Enable advanced profiling) prevents EditText from crashing

Update:

Fix released in Android Studio 3.1.1

Advanced profiling available once again!




回答2:


This seems only happens on Android 6.0 devices, the EditText works fine on Android 5 and android 7 devices. Disable advanced profiling (API < 26) in the run configuration works for me.




回答3:


Android 5.1.1, same problem. Seems to a bug in new Android Studio. Disabling advanced profiling fixes the problem for debug build.




回答4:


Faced with same EditText issues just right after update to Android Studio 3.1. Try to set debuggable false in build.gradle for debug build type. Or just switch to release build type since it's false by default. That helped in my case.

Update: Confirming that disabling advanced profiling fixed my issue as well.




回答5:


I had the same problem, but after:

  • Deleting .idea, .gradle, gradle folder and recreate it.
  • Clean project.
  • Rebuild app.

it works for me.



来源:https://stackoverflow.com/questions/49512975/android-studio-3-1-edittext-stackoverflowerror

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!