ResourceBundle на Android в папке активов

В настоящее время я использую ResourceBundles в чистой Java-программе. Теперь я хочу использовать те же файлы внутри приложения Android. Он работает так, как задумано, когда файл размещен, например, в /sdcard/. Есть ли способ загрузить их прямо из известной структуры папок Android? например, из активов без ручного копирования их на SDCard?

Это работает на SDCard:

    File file = new File("/sdcard/");
    URL[] urls = new URL[0];
    try {
       urls = new URL[]{file.toURI().toURL()};

    } catch (MalformedURLException e) {
        e.printStackTrace();
    }

    ClassLoader loader = new URLClassLoader(urls);
    ResourceBundle rb = ResourceBundle.getBundle("test", Locale.DEFAULT, loader);

Этот URL-адрес не работает для папки Assests:

   urls = new URL[]{new URL("file:///android_asset/test/")};

Спасибо за любую помощь.

1 ответ

Попробуйте создать resources папка по этому пути src/main/resources а затем положить или получить ваши файлы оттуда с помощью ResourceBundle на андроид.

Меня устраивает.

Другие вопросы по тегам