更快的Android媒体扫描算法

时间:2013-10-30 06:42:07

标签: android performance mediastore

我正在努力学习在机器人中编码 我遇到了这个媒体商店,它返回了存储在卡上的所有mp3文件的所有细节(内部和外部) 但这种方法非常慢 我猜这是默认音乐应用程序中实现的内容 难怪它有时无法找到所有文件......

我正在考虑为此目的实现更快的搜索算法,但我对这些算法的初始要求感到困惑 1:我想实现二进制搜索方法(Divide n Conquer)来查找文件,但是算法需要有关要扫描的文件数量的信息。我怎么做到的?
2:我想为每个分割的集群实现单独的线程。但是它真的有用吗?

Plz帮帮我!

最后一个问题:poweramp如何在世界上如此迅速地找到所有文件,
我的机器人在卡上有大约200首歌曲,但是这个应用程序只需要几秒钟就能完成所有这些! 真的很困惑!!

1 个答案:

答案 0 :(得分: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());