android的某些依赖项是否可以使用?我的意思是他们可能有恶意代码吗?毕竟它们是由我们不知道的用户写的
答案 0 :(得分:1)
依赖关系是一种使用"外部"项目中的文件。 Android无关紧要,因为这个概念是通用的。您可以依赖于相同代码库中的代码,但这超出了此问题的范围。
考虑依赖关系的有用方法可能是将其他开发人员编写的源代码添加到源代码中。请注意,这在技术上是错误的,因为依赖项可能会添加已编译的库或其他类型的文件,但它可能对初学者有所帮助。
由于依赖性而导致威胁出现是不准确的,因为危险是基于奇异依赖性。
您必须检查每个依赖项的可信度。如果您通过数百个开发人员添加数千个修改的依赖项,您可能会相信依赖项是安全的。但是,如果您向一位作者和少数用户添加依赖项,则通常会有更高的危险代码风险。
除了作者之外,依赖关系的来源也很重要。在可靠的包管理器中,危险代码不太可能存在,其中依赖性被审查。
这些规则是一个可以开始的地方,但可能有例外。最后,你需要决定你能做什么,不能信任。我假设大多数依赖项都是安全的,特别是如果它们的目的适用于广泛的项目。
答案 1 :(得分:0)
android的某些依赖项是否可以使用?
对我而言危险意味着我的项目一旦无法运行! 示例:我将包含一个超级库,编译,测试和发布。每个人都很开心。该库向他们的服务器发布了一些数据并执行了某些操作:崩溃报告,Google Analytics,甚至可能会向我的客户发送垃圾邮件,无论如何,也可能是恶意软件。真正的问题是,如果库将使用服务器更改协议,我将收到通知邮件。也许我会在垃圾邮件文件夹中收到,我会忽略它。过了一会儿,我的应用程序将开始崩溃并产生警告。这是包含代码的真正危险。
我的意思是他们可能有恶意代码吗?
可以,但是每个人都会测试它,如果有,它将被删除。
毕竟它们是由我们不知道的用户编写的
如果您亲自了解代码编写者,您会感到高兴吗? - 他吃什么,喝什么,他的鞋子尺码是多少?他属于一家公司,甚至可以出售,你只需要与修改代码的其他开发人员一起醒来。 你应该专注于代码,而不是写作代码的人。
包含的代码部分是一把双刃剑,短期内可能会对你有所帮助,但肯定不会,但你必须为昨天提供结果......这就是为什么有时需要包括的。