gpt4 book ai didi

android:为什么要在 Environment.getDataDirectory() 中使用 Environment 而不是用于 getFilesDir()

转载 作者:行者123 更新时间:2023-11-30 01:18:14 34 4
gpt4 key购买 nike

我遇到了以下方法:

Environment.getDataDirectory() : /data

getFilesDir() : /data/data/package/files

一种方法使用环境,另一种则不使用。

有什么意义。如果没有环境,使用起来会很简单,因为方法名称不一样。

最佳答案

好吧,要么我不明白你不明白,要么你不明白像 Environment.method()method 这样的方法调用之间的区别() ...
如果这就是您想了解的,为什么在第一次调用时写类名,是因为第一个方法是静态方法,您不需要该类的实例来调用它。它也属于环境类。所有静态方法都使用其类的名称调用(当您在类内部时,例如测试类或子类,然后并且只有这样您才能在其调用前不使用类名进行调用。即便如此,你可以把类名放在那里......
getFilesDir() 是一种需要它所属类的实例的方法 - 即 ContextWrapper - 或者它的子类的实例被调用......所以,如果你在一个 Activity(它是 ContextWrapper 的间接子类),您可以这样调用它:this.getFilesDir() 或简单地 getFilesDir()。您也可以从 fragment 中调用它,例如 getActivity().getFilesDir()getApplication().getFilesDir() 等等...您可以转到 ContextWrapper 类从 Android 并查看层次结构。
抱歉,如果这个解释不是您所需要的,但我知道您知道这些方法的用途...

关于android:为什么要在 Environment.getDataDirectory() 中使用 Environment 而不是用于 getFilesDir(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37520560/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com