Android:通过静态变量传递值会导致安全问题吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android:通过静态变量传递值会导致安全问题吗?相关的知识,希望对你有一定的参考价值。

通过静态变量传递值是从其他技术角度here,但我想知道是否在所有应用程序范围内使用静态变量作为全局变量,导致安全问题或信息泄漏,因为android应用程序在独立沙箱中运行?

答案

你的意思是Intent可以说比静态变量更不安全吗?

无论何时在startActivity()上调用startService()bindService()sendBroadcast()ContextIntent都会离开您的进程,进入核心操作系统进程,然后进入包含您尝试使用的组件的任何进程。这包括调用方法的组件与其尝试使用的组件处于同一进程中的情况。在其他条件相同的情况下,static变量更安全,因为它不会离开过程(除非你自己这样做)。

据我们所知,Intent物体可以抵御间谍。但是,过去这个领域存在漏洞,我不能排除未来漏洞的可能性。

从所有应用程序范围我的意思是静态变量是共享的,应用程序中的每个人都可以看到它

除了框架实现之外,您负责应用程序中的所有代码。

如果应用程序有多个进程,则在它们之间共享静态变量

没有。

或者每个进程都包含静态变量的不同实例?

是。

以上是关于Android:通过静态变量传递值会导致安全问题吗?的主要内容,如果未能解决你的问题,请参考以下文章

Android开发中SeekBar的值改变后,系统如何得到其改变后的值

如何将ThreadLocal传递到子线程

覆盖应用程序类并通过静态变量访问它是不是安全?

android中的static

在Android中如何使用全局变量

Android内存重启之静态变量被回收导致nullPoint问题