В идеале ваше приложение не знает и не заботится о том, какие наборы ресурсов у вас есть. В конце концов, в этом и заключается смысл ресурсов - защищать ваше приложение от изменений ресурсов.
При этом, одной из возможностей является написание сценария, являющегося частью вашего процесса сборки, который генерирует файл с запрошенными вами данными (например, файл XML, содержащий список наборов ресурсов), который вы затем читаете во время выполнения.
Или договориться, чтобы в каждом сете была «магическая ценность». Например, в res/values-de/strings.xml
может быть строка lang_de
, а в res/values-nl/strings.xml
- строка lang_nl
. Затем вы можете использовать отражение, чтобы перебрать ваши строковые ресурсы и найти те, которые соответствуют шаблону lang_
. Это может быть значительно медленнее, чем в первом варианте, особенно если у вас много строковых ресурсов.
Я не знаю, как можно опрашивать систему, чтобы узнать, какие наборы ресурсов определены.