2013-08-23 80 views
1

我想訪問我的android類中的訪問權限。訪問資產android

我知道我可以使用getAssets,但我正在使用util類而不是活動,所以我無法訪問上下文。

我可以在我的構造函數或setter方法添加PARAM但這不是很恰當

伊爾有一個很好的解決方案來訪問的UTIL類我的資產?

感謝

編輯:

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

屬性文件 – 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]); 
}