我们为Android开发了自定义键盘,我们面临着一个奇怪的问题。该问题目前只发生在少数设备和我们的登录网站上...但它导致我们的键盘长时间挂起,最终让用户可以选择关闭或继续等待。
准确地说,我们有一个自定义键盘,它有一个登录页面(片段webview),对键输入的响应时间很慢。
跟踪堆栈跟踪是重要的部分:
11-17 09:35:07.535 5935-5935/xxx W/InputConnectionWrapper.ICC: Timed out waiting on IInputContextCallback
但问题是它正在等待我无法看到(援助文件)来源的内容:https://android.googlesource.com/platform/frameworks/base.git/+/android-4.2.2_r1/core/java/com/android/internal/view/IInputContext.aidl
所以我不知道我们做错了什么(其他键盘没有这个问题),我真的不知道应该如何调试它。我尝试从Chrome浏览器访问该网页,同时启用了其他键盘的应用也没有任何问题,但仍然没有问题。
非常感谢任何关于如何进行的想法。
答案 0 :(得分:4)
所以这似乎是Android 7.0引入的“bug”(可能与新的Web客户端有关)。该错误只是一个自定义键盘,在同一过程中WebView
会给输入字段带来问题。解决方案是将WebView(s)
的活动置于单独的过程中。
示例清单:
<activity
android:process=":webactivity"
android:label="real label"
android:name="com.something.activity"
/>