Почему имена файлов в выделенной папке не могут содержать специальные символы или начинаться с прописной буквы?
Есть ли смысл в этих правилах?
Ответ 1
Каждый файл внутри папки преобразуется в имя поля java внутри класса R.java:
drawable\icon.png -> R.drawable.icon
Следовательно, причина не в использовании специальных символов внутри имен файлов, так как они не могут использоваться в именах Java.
Как и для прописных букв, я предполагаю, что избежать одной небольшой проблемы в среде Windows и Linux. Это связано с тем, что Linux считает, что Icon.png и Icon.png - разные файлы, а Windows считает, что Icon.png и Icon.png - это тот же файл. Поэтому любой, кто использует Linux, может создавать приложения, которые не компилируются в Windows.
Ответ 2
Вы можете увидеть некоторые дискуссии об этом, Здесь