在Android GETDIR和getFilesDir之间的区别是什么?(What is the difference between getDir and getFilesDir on Androi

原文链接: http://www.it1352.com/113650.html

Question:


I would like to save a picture in Internal Storage of my app, to make it private. So I did a little research and saw 2 ways to get the directory.

1.With getDir :

File dir = getDir(Environment.DIRECTORY_PICTURES, Context.MODE_PRIVATE);

2.With getFilesDir :

File dir = getFilesDir();

Which is best ? Which returns the location in Internal Storage ?

The way of writing files depends on the way you get your dir ? I am a bit lost since there are many ways to write files in Android.

Answer:


getFilesDir() returns a File object to a directory that is private to your application only. When you use openFileOutput(String, int), the data you write is directly stored in this directory and is not accessible by any other application. It holds your application files.

getDir() enables you to create any file or directory in the internal memory, which is also accessible by other applications depending on the mode you create it. openFileOutput(String, int) will not work with the output of this so you will have to use other means of writing and reading files to deal with this directory or file. This is more used for creating custom files other than files only used by your application.

总而言之,最大的区别就是是否支持共享这一点.

猜你喜欢

转载自blog.csdn.net/qq_31433709/article/details/102678642