Я работаю над приложением Android и использую этот класс для загрузки файла ресурса, расположенного в папке res / raw приложения, в виде строки Java:
public class ResourceReader {
public static String resourceToString(Context context, int id) {
try {
Resources res = context.getResources();
InputStream in_s = res.openRawResource(id);
byte[] b = new byte[in_s.available()];
in_s.read(b);
return new String(b);
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
}
Контекстом является действиеоснованный класс приложения, идентификатор найден, используя R.raw.mytext.Ресурс представляет собой файл, созданный в указанной папке.При использовании в приложении нет проблем получить содержимое файла в виде строки с такой строкой: String content = ResourceReader.resourceToString (this, R.raw.mytext);
Поскольку ресурсы, которые я читаювероятно, будет использоваться в других приложениях, я хотел бы поместить не только классы, но и ресурсы во внешний файл JAR.
В eclipse я могу создать файл jar для Android, дополненный ресурсами и связанным Rучебный класс.Целочисленные значения, связанные с именами, доступны, как и ожидалось, но как мне прочитать содержимое?
Мне нужно получить ресурсы библиотеки, а не приложения.
resourceToStringМетод нуждается в контексте:
Resources res = context.getResources();
Вопрос: есть ли контекст библиотеки?И как мне получить этот контекст?- Или любой другой способ доступа к содержимому ресурса библиотеки?