java Android应用程序如何访问messenger聊天?
我想写一个分析聊天的Android应用程序。对于每个messenger,对于每个联系人,我希望获得发送和接收的所有消息的列表(自安装我的应用程序以来)。这里的关键是,我希望消息列表是有序的。我的应用程序应该支持尽可能多的Messenger。最好的方法是什么
我研究并找到了一些访问信使信息的方法:
- 使用无障碍服务
(相关:How to read window content (using accessibilityService) and evoking UI using draw over other app permission in Android?)
- 阅读带有辅助功能标签的其他应用程序的屏幕内容
- 注意事项:
- messenger需要正确实现可访问性
- 我必须过滤哪些文本块是相关的
使用
NotificationListenerService
- 获取已接收邮件的通知内容的步骤
- 注意事项:
- 仅获取有通知的消息的内容
- 除了他们的时间,没有给出消息的顺序
截图并进行光学字符识别
- 注意事项:
- 可能是疯了
- 注意事项:
当我收到这些信息时,我仍然需要对它们进行排序。为此,我认为,无障碍服务是我最好的选择,因为我可以在大多数消息中使用屏幕上的日期信息,以及它们在屏幕上的位置
然而,仍然存在一种边缘情况。据我所知,辅助功能服务只能看到屏幕上当前的内容。当安装了应用程序的设备关机时,用户还可能使用其他设备聊天。因此,一旦安装了应用程序的设备再次通电,应用程序可能无法看到设备断电时写入的旧消息(直到用户再次向上滚动)
我的假设正确吗?你知道我的应用程序读取/排序消息的更好方法吗
共 (0) 个答案