通过静态变量传递值主要来自其他技术视角here,但是我想知道是否在所有应用程序范围内使用静态变量作为全局变量,导致安全问题或信息泄漏,因为Android应用程序在内部运行独立的沙箱?
答案 0 :(得分:4)
你的意思是说Intent可以说比静态变量更不安全吗?
当您在startActivity()
上致电startService()
,bindService()
,sendBroadcast()
或Context
时,Intent
会离开您的流程,转到核心操作系统进程,然后转到包含您尝试使用的组件的任何进程。这包括调用方法的组件与其尝试使用的组件处于同一进程中的情况。在其他条件相同的情况下,static
变量更安全,因为它不会离开过程(除非您自己这样做)。
据我们所知,Intent
个对象可以抵御间谍。但是,过去这个领域存在漏洞,我不能排除未来漏洞的可能性。
从所有应用程序范围我的意思是静态变量是共享的,应用程序中的每个人都可以看到它
除了框架实现之外,您负责应用程序中的所有代码。
如果应用程序有多个进程,则在它们之间共享静态变量
没有
或每个进程是否包含静态变量的不同实例?
是