2009-10-27 78 views
6

我的目標是在由Context#getCacheDir()返回的目錄中存儲臨時文件。如何將文件存儲在Android的緩存目錄中?

/data/data/my.app/cache/somedir/foo.json 

我假設我可以使用java.io apis在那裏寫文件。但我不知道如何設置文件的權限,因爲我無法使用Context#MODE_PRIVATE。

上下文#openFileOutput和Context#openFileInput的filename參數不能接受帶有路徑分隔符的輸入。因此,他們只在目錄中創建的文件有用:

/data/data/my.app 

回答

6

默認情況下,Android中的每個應用程序都以其自己的用戶帳戶運行,因此應用程序創建的文件將無法從任何其他應用程序訪問。看看子彈點#3在此頁面的頂部:

http://developer.android.com/guide/topics/fundamentals.html

你也可以通過在模擬器/設備運行shell和LS -l的輸出看驗證這一點。

5

但我不知道如何對文件設置權限 那裏,因爲我 將無法​​使用 語境#MODE_PRIVATE。

AFAIK,它們在默認情況下應該是私有的。

相關問題