У меня есть файл, опубликованный в моей папке files
в Android.
Я могу правильно загрузить его, позвонив по номеру new ClassLoader().getResourceAsStream(getFilesDir().getAbsolutePath() + "/myFile")
.
. Проблема в том, что мне нужно вызвать его черезThread.currentThread().getContextClassLoader().getResourceAsStream(fileName)
Я пробовал много способов:
Thread.currentThread().getContextClassLoader().getResourceAsStream("/myFile")
Thread.currentThread().getContextClassLoader().getResourceAsStream("/myFile.extension")
Thread.currentThread().getContextClassLoader().getResourceAsStream("myFile")
Thread.currentThread().getContextClassLoader().getResourceAsStream("myFile")
Thread.currentThread().getContextClassLoader().getResourceAsStream(getFilesDir().getAbsolutePath() + "/myFile")
Thread.currentThread().getContextClassLoader().getResourceAsStream(getFilesDir().getAbsolutePath() + "/myFile.extension")
Каждый случай возвращал меня null
.
Мне нужно использовать этот метод, потому что мне нужно вызвать внешнюю библиотеку, которая его использует, но я не могу понять, что мне следует передать как имя файла / путь, чтобы он работал.
Любая помощь будет оценена.
Спасибо
Структура папки:
«основной» пакет:
com/company/customer/project/activities/MyActivity.java
Класспакет:
customer/project/helper.java
Helper.java
файл вызывается MyActivity.java
и запускает код getClassLoader()
.
Это путь к моей папке с файлами:
getFilesDir().getAbsolutePath();
//it results in
"/data/user/0/com.company.customer.project.flavor.dev/files"