我們正在構建一個android應用程序,但是這個應用程序必須確保目錄樹和SD或內部存儲中的一些文件。android應用程序需要SD卡中的某個目錄才能運行
我想也許我可以打包這些文件,然後將它們提取到用戶設備。
但是我有兩個問題:
1放置文件的位置? asset
或raw
文件夾?
2在哪裏做檢查工作?活動內部?是否有必要爲我的應用程序創建一個Application
對象並完成這項工作?
謝謝。
我們正在構建一個android應用程序,但是這個應用程序必須確保目錄樹和SD或內部存儲中的一些文件。android應用程序需要SD卡中的某個目錄才能運行
我想也許我可以打包這些文件,然後將它們提取到用戶設備。
但是我有兩個問題:
1放置文件的位置? asset
或raw
文件夾?
2在哪裏做檢查工作?活動內部?是否有必要爲我的應用程序創建一個Application
對象並完成這項工作?
謝謝。
1放置文件的位置?資產或原始文件夾?
由於您可以從兩個文件夾中讀取文件,可能的區別在於讀取速度和文件大小。資產中的文件是壓縮的,所以它們佔用較少的空間,但可能需要多一點時間來閱讀;而原始文件沒有壓縮,所以不需要解壓縮來讀取它們,但它們佔用了整個空間。
2在哪裏做檢查工作?活動內部?是否有必要爲我的應用程序創建一個Application對象並執行此項工作?
至少你需要做的是在你的啓動器Activity中檢查它。但由於用戶或其他應用程序可以隨時以任何他們想要的方式修改SD卡,因此最好在每次活動恢復時進行檢查,並且在每次使用之前也可以進行檢查。
1放置文件的位置?資產或原始文件夾?
這取決於你想放什麼樣的文件。所以你應該瞭解資產和原始資產之間的差異。這個類似的問題 - The reason for Assets and Raw Resources in Android - 可以幫助你
2在哪裏做檢查工作?活動內部?是否有必要爲我的應用程序創建一個Application對象並執行此項工作?
這取決於您的設計。你必須考慮性能。例如,您可以在活動恢復時執行檢查作業,但可能需要很長時間,這可能會導致用戶體驗不佳。因此,對於這種情況,您最好在線程中執行檢查作業,並在檢查完成時將通知發送到前端。或者,您可以在系統引導時執行檢查作業。或者在您的活動創建時執行檢查工作。