2013-10-30 52 views
0

我在工作中n在此期間學習在android
中的代碼我遇到此媒體庫,它返回卡上存儲的所有mp3文件的所有詳細信息(內部&外部)。
但這種方法是非常非常慢
我想這就是已經在默認的音樂應用程序
難怪有時無法找出所有的文件已經實現...
更快的媒體掃描算法android

我想實現的更快的搜索算法爲此目的,但我很困惑這些算法的初始要求
1:我想實現二進制搜索方法(分離n征服)來查找文件,但然後該算法需要關於文件數量的信息被掃描。我怎麼得到的?
2:我想爲每個劃分的集羣實現單獨的線程
。但那麼它會真的工作嗎?

Plz幫助我!

最後一個問題:如何在世界上做後級如此迅速地找出所有的文件,
我的Android已經上牌約200首歌曲,但這個程序只需要幾秒鐘,讓他們所有!
真的很迷惑!

回答

1

試試這個代碼:

去下載和DCIM文件夾中有你可以使用這個命令來獲取所有文件,如果你想那麼這裏過濾文件是link

Process process = null;    
    try { 
    process = Runtime.getRuntime().exec("ls -l"); 


    } catch (IOException ez) { 

    ez.printStackTrace(); 
    } 
    BufferedReader in = new BufferedReader(new InputStreamReader(process.getInputStream())); 

    StringBuilder total = new StringBuilder(); 
    String line; 
    try { 
    while ((line = in.readLine()) != null) { 

     System.out.println("line: "+line.toString()); 
     total.append(line); 
    } 
    } catch (IOException ex) { 

    ex.printStackTrace(); 
    } 
    System.out.println("Command Output: "+total.toString()); 
+0

感謝阿里我」我會試試這個n通知你有關結果! – user2866238

+0

是什麼讓你說,返回的媒體庫細節是緩慢的。當選擇所有音樂時,光標立即返回。需要花費時間的是顯示器,特別是如果您添加albumart。我發現羅查先生的冰沙圖書館是天賜之物。特別是如果你正在學習代碼,我的建議是搜索網頁(我發現Stackoverflow和Vogella最有用)。我也在學習,並有我的應用程序可用來管理播放列表。通過THEOKLINK搜索播放列表管理器,您會發現所有音樂細節都以非常高效的方式呈現。 – Theo