像Texpand这样的应用程序可以替换任何EditText视图中的文本 - 甚至是其他应用程序中的视图。查看app-info,这是在没有任何请求权限的情况下发生的。我正在摸索如何做到这一点 - 我(新手)的理解是每个应用程序都驻留在自己独立的沙盒中,所以它不应该直接访问其他应用程序视图?
我寻找可能由任何中央经理提供的可能的全球事件,但一无所获。更可能的是,我希望替换是被动地完成的(这意味着没有应用程序知道实际的EditText),但是检查可能的绑定或用户词典我发现没有什么好处。
看看我的Android系统,似乎该应用既没有使用权限也没有安装键盘。另外,我在用户词典中看不到任何条目。有没有人知道如何实现所描述的功能?
答案 0 :(得分:0)
Texpand的Google Play帖子表明它使用了Accessibility Services。可访问性服务是Android提供的一组API,用于帮助构建工具以允许与应用程序的非标准交互(例如音频描述/语音命令),以便将对平台的访问扩展到可能会阻止他们使用触摸的人-screen /智能电话。
其中包括代表用户take action的功能,例如填写文本字段。