可可拼音输入法的光标跟随尝试
一直以来做APP最愁的就是给操作系统填坑,做安卓APP还得给国内厂商填坑,现在做输入法还要加上一层,给别的APP填坑,比如可可拼音输入法遇到的编辑框问题,目前主要有几个软件:
1. 闲鱼:聊天界面的那个编辑框遮盖,在黑莓上所有的第三方输入法都是会被遮盖,我之前就说过推测是使用Flutter框架导致的。
2. 与你:同样是聊天界面编辑框遮盖问题,这是一个用户反馈的,这个软件界面不是Flutter做得,我看了一下这个应用的布局也非常简单,上下部分就是一个LinearLayout
,但是没有处理好编辑框事件,我在黑莓手机上是没问题的,只出现在TP
上,应该是Android
系统版本差异导致,用户反馈说原生输入法是好的,我测试了一下,原生输入法并不行,没有触发是因为没有关闭虚拟键盘,靠软键盘推上去了,但是原生输入法关闭虚拟键盘之后是没法用的,因此我找来Gboard
测试了一下,也是会被遮盖,不过讯飞输入法是可以的,无论是正常模式还是光标跟随模式,由此可见讯飞的兼容性还是非常强的。
3. 哔哩哔哩:在视频详情页点击编辑框可可拼音输入法会闪一下然后消失了,也是在TP
上出现,系统版本差异导致,这个我增加了一个兼容编辑框模式来解决。
4. 抖音:TP
在翻屏助手勾选抖音之后,滑动键盘会导致候选框消失,但是这个跟哔哩哔哩的情况不一样,这个是因为在启用强制滑动之后误触导致的,在强制启用之后即使输入法拦截了触摸滑动事件,依然会传递给当前应用,直接去掉勾选就行了,不过我已在编辑框兼容模式也对该情形做了处理。
闲鱼
的编辑框遮盖问题我迟迟没有去解决是因为这种问题软件本身的开发者稍微适配一下就行了,而输入法要去解决这个问题非常麻烦,绕一大个圈子写了一堆代码除了尝试更多的bug没有太大的作用,因此我给闲鱼提交过两次反馈,但是两年多过去了,这个问题依然存在,不知道是闲鱼团队的QA
没有把这个bug提交给开发人员,还是开发人员不想处理这个问题,不多那段时间我看闲鱼团队的人吹嘘Flutter
的时间挺多的,不至于没时间修改这个问题。
至于与你
这个软件的编辑框问题是系统版本差异造成,虽然google
官方的输入法也存在这个问题,但是讯飞不存在,因此还是需要解决这个问题,要不然用户第一反应为什么其它输入法是正常的,我想到的有两种方案,一直是把软键盘再弄回来,给顶上去,另外一种是光标跟随,第一种方案会简单一点,但是可可拼音输入法原本就完全放弃了软键盘,我不想再回头,于是我就尝试光标跟随,经过了几天的测试,发现改动非常大,我也建立了一个独立的分支来处理,短时间内完成不了。
最后吐槽一下与你
这个软件编辑框的问题google
官方输入法都是如此,说明他们的开人员已经完全不会考虑全键盘手机了,影响最大的黑莓它的Android
系统版本停留在8.1
了,回想当年用G1
在初次使用Android 0.9
版本SDK
做开发的时候,第一反应那就是个翻版黑莓啊,连屏幕软键盘都是没有的,一个完全基于物理键盘的系统,如果做Android TV
开发就会发现安卓的按键事件和焦点处理像个半成品系统,很多地方不合理,那就是因为对着黑莓抄着抄着半路杀出个iPhone
,系统开发到一半改变了路线,所以才会如此,不过遗憾的是像我这样的老全键盘用户以后真没有什么可选择的手机了。