2013-08-23 2 views
1

Я хотел бы получить доступ к моему классу Android.Доступ к активам android

Я знаю, что могу использовать getAssets, но я работаю над классом util, а не с активностью, поэтому я не могу получить доступ к контексту.

я могу добавить в моих параметры конструктора или сеттерах, но это не очень правильный

Il есть хорошее решение, чтобы получить доступ моих активов в классе Util?

Благодаря

Edit:

File file = new File("file:///"); 
String[] list = file.list(); 
for(int i = 0; i<list.length; i++){ 
    System.out.println(list[i]); 
} 

но список пустой

+0

Что есть в вашей папке активов? – TheLittleNaruto

+0

a файл свойств – Ajouve

+0

Это действительно не работает. Я пробовал файлы с разными расширениями – TheLittleNaruto

ответ

0

я найти решение с помощью контекста это собственно

public static Properties getProperties(Context context) 
{ 
    Properties prop = new Properties(); 
    try { 
     prop.load(context.getAssets().open("config.properties")); 
    } catch (FileNotFoundException e) { 
     Log.v(TAG+"_PROPERTIES","FileNotFoundException",e); 
    } catch (IOException e) { 
     Log.v(TAG+"_PROPERTIES","IOException",e); 
    } 

    return prop; 
} 
0

Вы можете использовать это file:///android_asset/assetname.extension к относится к активу. Наверное, создайте File с дорогой, как указано выше, в свой актив.

+0

Спасибо, но у меня ничего нет (я редактирую свой первый пост) – Ajouve

+1

Я не думаю, что так оно и было, это сработает. Вам нужно иметь android_asset/filename, это как-то относится к материалам в вашем каталоге ресурсов. – Varun

0

Попробуйте:

File file = new File("file:///android_asset/"); 
String[] list = file.list(); 
for(int i = 0; i<list.length; i++){ 
    System.out.println(list[i]); 
}