2012-04-14 58 views
3

我最近在我的Android項目中添加了res/raw/dictionaries/en-GB/wordlist.txt。它創建了一個錯誤。我最終發現目錄名稱dictionaries導致了問題,我將其更改爲dicts並且一切正常。Android的res目錄中的目錄的禁用名稱是什麼?

爲什麼這個名字不被允許?有其他人不允許嗎?是否有一個不允許的目錄名稱列表?

回答

4

http://developer.android.com/guide/topics/resources/providing-resources.html 你可以看到:

預選賽名稱規則

替代資源目錄不能嵌套。例如,你的 不能有res/drawable/drawable-en /。

嵌套的文件夾沒有在res文件夾支持,支持 只有文件的線性表。但是在assets文件夾中,您可以將 任意層級的文件夾和文件包含在其中,因爲資產文件夾的內容不被視爲資源。

你不應該能夠像res/raw/dicts/en-GB/wordlist.txt,但是如果發生,你可能未能獲得wordlist.txt(R.raw.wordlist)

資產文件夾和文件夾原料的資源ID,是相似的。兩個 都可以包含原始文件,但原始文件中的文件被視爲資源,資產中的文件不包含。

+0

有趣。我還沒有嘗試訪問這些文件,但只是更改文件夾的名稱似乎使錯誤消失。聽起來像它可能是一個錯誤。 – fredley 2012-04-14 14:07:28

+0

可能是一個bug.i用你定義的'res/raw/dictionaries/en-GB/wordlist.txt'命名了一個測試,這種情況下它沒有給我錯誤,但是我無法通過資源訪問單詞表id(R.raw.wordlist) – 2012-04-14 14:23:45