Android, используя ресурсы внешних банок - PullRequest
1 голос
/ 12 декабря 2011

Я работаю над приложением 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();

Вопрос: есть ли контекст библиотеки?И как мне получить этот контекст?- Или любой другой способ доступа к содержимому ресурса библиотеки?

...