2013-10-30 53 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