Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 在项目中实现的库(.jar)能够访问用户数据吗?_Android_Security - Fatal编程技术网

Android 在项目中实现的库(.jar)能够访问用户数据吗?

Android 在项目中实现的库(.jar)能够访问用户数据吗?,android,security,Android,Security,假设我已考虑通过添加project的gradle来使用库: implementation fileTree(dir: 'libs', include: ['*.jar']) 该jar文件中运行的代码能否访问用户详细信息,如设备id、位置、文件等。。如果用户已在我的应用程序中授予这些权限 我很担心,因为我正在使用一些.jar库,但我无法验证这些库的可信度。我只是担心这些库访问这些信息并将其存储在服务器上。是的。如果您在任何时候调用库的代码(甚至导致加载其类),它可以使用与您自己编写代码

假设我已考虑通过添加project的gradle来使用库:

     implementation fileTree(dir: 'libs', include: ['*.jar'])
该jar文件中运行的代码能否访问用户详细信息,如设备id、位置、文件等。。如果用户已在我的应用程序中授予这些权限


我很担心,因为我正在使用一些.jar库,但我无法验证这些库的可信度。我只是担心这些库访问这些信息并将其存储在服务器上。

是的。如果您在任何时候调用库的代码(甚至导致加载其类),它可以使用与您自己编写代码相同的权限执行代码


至于这是为什么,一旦应用程序被编译,所有东西(或多或少)都会被合并到同一个字节码文件中。这通常是可取的-应用程序可能希望库在大多数时间使用其应用程序的权限。但这确实意味着没有简单的方法“沙箱”一个库的代码来阻止它使用权限/访问/传输数据。

如果.jar文件中的类在.so文件的其他地方调用本机代码,也会发生这种情况吗?是的,你在应用程序中调用的任何代码都可以做任何你能做的事情,但我知道有些模块有自己的清单文件。这些库是否能够在其清单中权限之外执行代码?是的,它们将能够使用您的应用程序的所有权限执行代码。所有清单文件也合并为一个,因此应用程序中的所有代码都具有相同的Android权限。当然,我已经对其进行了升级,您是否可以提供一个指向资源的链接来解释其工作原理?