1

Android アプリとして mp3 プレーヤーを作成しようとしていますが、My Files フォルダー内の .mp3 ファイルを自動的に見つけられるようにしたいと考えています。既にそこにある .mp3 ファイルをダウンロードできる Dropbox へのリンクを含めるため、Music フォルダへの直接パスは必要ありません。これはダウンロード フォルダに移動し、MP3 プレーヤーに取得してもらいます。

どうすればこれを行うことができますか? どんな助けでも大歓迎です。

4

1 に答える 1

-1

この方法はうまくいくはずです

private void searchMusic() {

    int count = 0;
    ArrayList<String> musicFiles;
    LinkedList<File> stack = new LinkedList<File>();
    File directory = new File(Environment.getExternalStorageDirectory()
            .getAbsolutePath());
    stack.add(directory);
    while (!stack.isEmpty()) {
        File fmusic = stack.removeLast();
        File[] files = null;
        try {
            files = fmusic.listFiles();
        } catch (Exception e) {
        }
        musicFiles = new ArrayList<String>();
        if (files != null) {
            for (File folder : files) {

                if (folder.getName().endsWith(".mp3")
                        || folder.getName().endsWith(".ogg")
                        || folder.getName().endsWith(".wav")
                        && folder.isFile() && folder.canRead()
                        && !folder.getName().startsWith("._")) {

                    count++;
                    musicFiles.add(folder.getPath());
                }

                try {
                    if (folder.isDirectory()
                            && !FileUtils.isSymlink(folder)) {
                        stack.addFirst(folder);

                    }
                } catch (IOException e) {
                    e.printStackTrace();
                }

            }
        }
    }
    return;

}
于 2013-04-10T17:56:25.507 に答える