2012-12-27 63 views
4

內部存儲和外部存儲在android中有什麼含義? Ιs外部存儲一個micro SD卡和內部存儲手機內存?如果我需要爲我的應用程序編寫一個文件,這只是我的應用程序需要的(用戶沒有工作處理這個文件),那麼我應該在哪裏寫我的文件 - 在內部存儲器或外部存儲器中?選擇內部存儲和外部存儲

我認爲,如果我在SDcard(外部存儲器)中寫入我的文件,那麼當用戶拔出SDcard時,應用程序將無法讀取文件。這樣對嗎?如果它是正確的,那麼在外部存儲器中寫入文件將不符合我的標準。因爲,我的應用程序必須多次檢查文件中的一些數據,並且如果在特定時刻用戶將SD卡拉出,我的應用程序無法實現其目標。

而且我需要永久性地寫入文件(但是如果用戶卸載應用程序,那麼文件應該被刪除)。那麼,我該走哪條路?

回答

0

你應該使用內部存儲它總是由你的應用程序,而不是其他應用程序可能有權限訪問的訪問。

我認爲你應該通過內部存儲區域。

謝謝

4

看一看這個博客帖子大約the correct way to use file storage in Android

如果您需要隨時訪問文件,內部存儲是最佳選擇。但是你不應該在內部存儲中使用大文件,因爲許多設備在存儲空間上非常有限。

當您首先使用Android內置機制創建文件時,文件會在外部以及內部存儲上自動刪除。這在帖子中也有解釋。

1

Ιs外部存儲microSDcard和內部存儲手機內存?

microSD卡和內部手機內存,兩者都是根據官方Android文檔的外部存儲。

如果我需要編寫一個文件,我的應用程序,這只是我的 應用需求(用戶沒有工作要做與此文件),然後 我應該在哪裏寫我的文件 - 在內置存儲器或外部存儲器?

將文件保存在內部存儲器中。

而且我需要永久性地寫入文件(但如果用戶卸載了該應用程序,則該文件應該被刪除)。那麼,我該走哪條路?

將文件保存在內部存儲器中。

爲什麼?因爲,根據Official Android Guide

默認情況下,保存到內部存儲文件僅對您的 應用程序和其他應用程序不能訪問它們(也可以在 用戶)。當用戶卸載你的應用程序時,這些文件被刪除了 。

的方式來保存文件在內部存儲:

他們兩人都是在Context

File getDir (String name, int mode) 

File getFilesDir() 

但是,,許多低端手機都有有限的內部存儲器 。在這類手機中,即使使用相機拍攝的圖像也會自動存儲在SD卡中。你必須照顧這種情況。

根據Google /官方Android文檔的內部和外部存儲術語是完全不同於我們所認爲的