JSON没有以正确的顺序解析轨道

时间:2016-12-11 09:40:42

标签: android json

我创建了一个JSON文件,我的Android应用程序将其拉出列表并放入赞美诗并按特定顺序排列。以前,我的所有文件都在copticchurch-library.org/media中。这包括所有媒体和JSON文件本身。但是,我想做更多的组织工作,因为在添加更多媒体时可能会有点混乱。

我在copticchurch-library.org/media/matinsandvespers创建了一个新目录。 此目录包含与该文件夹相关的所有媒体(mp3和专辑封面)。 JSON文件夹仍在copticchurch-library.org/media

问题 为什么它没有在应用程序中以正确的顺序列出曲目?

JSON代码

result.Sentiment

根据代码和屏幕截图,一切都不正常,我无法弄清楚原因。

Screenshot of disordered media

奇怪的是,当我把所有东西都放在一个地方时它起作用,但是当我想创建子目录时,它会失去它的顺序。

我已经尝试将music.json文件放在该目录中,但仍然没有运气。

任何帮助将不胜感激。

修改 我已经为恢复的方法添加了更多的曲目,并且曲目仍然无序。

修改2

RemoteJSON.java

MusicProvider.java

编辑3 Github project repo

1 个答案:

答案 0 :(得分:0)

一位朋友帮我弄明白了怎么做。这是他写的代码,最终起作用。

} for (String key : newMusicListByGenre.keySet())
        {
            Collections.sort(newMusicListByGenre.get(key), new Comparator<MediaMetadataCompat>() {
                @Override
                public int compare(MediaMetadataCompat track1, MediaMetadataCompat track2) {
                    return track1.getLong(MediaMetadataCompat.METADATA_KEY_TRACK_NUMBER) < track2.getLong(MediaMetadataCompat.METADATA_KEY_TRACK_NUMBER) ? -1 : 1;
                }
            });
        }
        mMusicListByGenre = newMusicListByGenre;


        list.add(m.metadata);
    }
    mMusicListByGenre = newMusicListByGenre;

}