我是android开发新手。我知道意图和意图过滤器可以用来在应用程序之间共享数据,但我不知道是否有可能设计一个android应用程序,它可以在后台运行时从其他应用程序中提取某些特定信息。例如,如果用户使用的是WhatsApp,它可能会知道掉话率,或者在YouTube,Facebook或Netflix的用户终端上播放的视频,它将获得缓冲区播放时间,视频比特率等。我将非常感谢这个问题的答案提供了一个例子。Android应用程序可以从其他应用程序获取信息吗?
回答
不,大多没有。
但是,正如Tim Castelijns所写的那样,如果“目标”应用程序允许它,就像通过内容提供者那样,它是可能的。
在植根设备上,经过长时间对目标应用程序进行逆向工程后,它也可以获得一些信息。也只能从根源设备。
其他情况下,您可以编写几个应用程序和设计,以便他们可以一起通信,如通过意图,内容提供商。
也有可能获得正在运行的应用(用户必须允许它)
*还有可能获得正在运行的应用程序列表*使用哪些应用程序 –
@TimCastelijns在用户上安装和/或运行的应用程序列表。有了stackoverflow应用程序,你是一个über怪胎,有200个应用程序?也意味着什么。有Tinder/grinder /无论什么?它说你的sx方向。 –
这是一个相当浅的结论。无论如何,用户的个人利益与这个问题无关。 –
在其他的答案表明,你大多仅限于哪些应用将明确地向您提供的列表;实际上,设计良好的应用程序通常会试图防止“信息泄露”超出他们实际想要提供的范围。
其他一些人提到内容提供者,但另一个构造要查看是广播。如果应用程序在本地广播了一个意图(即使用本地广播管理器),您将无法看到它,但如果他们正在使用“系统范围”广播或接收另一个“系统范围”广播,您可以接收同一个事件。
在Android中,每个应用程序都运行在自己的“sandbox”上,该应用程序应该与设备上运行的其他应用程序隔离。
为了使应用程序与其他应用程序的Android框架物资交流,多种机制从其他应用程序发送/接收数据到/:Intents,IPC (AIDL),Content Providers等等
每个想要申请将其数据暴露给设备上的其他应用需要使用上述一种或多种机制来实现接口。
这意味着如果应用程序没有实现公开其数据或内部工作的接口,则其他应用程序将无法访问该信息。请注意,某些应用程序选择将其数据保存在公共可用磁盘空间(即可拍摄照片的相机可能会将其保存在可供所有应用程序访问的SD卡上)。在这种情况下,如果你知道要寻找什么,你可以告诉某些应用程序。
此外,由于Android操作系统暴露出的一些全局设置,如状态:Device's connectivity state,Battery state,当前打开的蓝牙接口,running applications,last executed apps等..
这些配置可能会让您对设备上正在发生的事情有个全面的了解。
- 1. iPhone应用程序可以销售其他应用程序吗?
- 2. 从我的Java应用程序的其他程序获取信息
- 3. Android应用程序可以查看其他应用程序数据文件吗?
- 4. Android应用程序:应用程序可以将信息发送到外部应用程序吗?
- 5. 是否可以获取其他已安装iOS应用程序的信息?
- 6. 是否可以从其他应用程序卸载一个Android应用程序?
- 7. 我可以在锁定Android应用程序时获取信息吗
- 8. 移动Web应用程序可以获取Android设备识别信息吗?
- 9. 其他Android应用程序
- 10. Android:从其他应用程序访问应用程序
- 11. 是否可以使用其他配置信息安装Android应用程序?
- 12. Android:从活动获取调用应用程序的信息
- 13. 其他应用程序在我的应用程序之前获取消息
- 14. 一个应用程序可以访问其他应用程序的事件吗?
- 15. iPhone应用程序可以隐藏/启动其他应用程序吗?
- 16. 获取Facebook应用程序信息
- 17. 从其他应用程序(特别是iPhone的电话应用程序)获取信息
- 18. 使用图形API:可以使用api()获取应用程序信息吗?
- 19. 使用其他应用程序更新应用程序信息(插件)
- 20. Android:是否有可能获得其他应用程序的通知信息?
- 21. 如何从其他Android应用程序
- 22. 获取iPad中的锁定应用程序以访问其他应用程序?
- 23. 应用程序请求和从第二个应用程序获取信息
- 24. Android应用程序从网站获取信息
- 25. 如何从Osclass获取信息到Android应用程序
- 26. 从Android应用程序获取快捷方式意图信息
- 27. Android应用程序可以获取用户的时间表吗?
- 28. 如何向其他Android应用程序请求信息?
- 29. 是否可以从其他应用程序启动应用程序
- 30. 您是否可以从其他应用程序中删除应用程序?
它可以,如果其他应用程序允许并明确公开此功能 –
您正在寻找的内容通常称为ContentProvider。并非所有的应用程序都公开一个,尽管 –
亲爱的@TimCastelijns我不知道我是否可以为YouTube,Netflix,Facebook和一些VoIP应用程序(如WhatsApp,Skype或Google Hangout)做到这一点 –