我一直在为 android 开发自己的音乐播放器(学习在 android 中编程)。
我的问题是当应用程序第一次启动时,它要求用户选择一个媒体文件夹来扫描文件。一切都很好,但我的文件夹中有大约 1200 首歌曲,扫描大约需要三分钟才能完成。扫描涉及的步骤是从文件夹中递归获取文件,然后我将每首歌曲的完整路径添加到数组列表中。然后将数组列表中的每个项目添加到数据库中。我添加到数据库的字段是路径、歌曲的标题(我使用 MediaMetadataReader 检索)、艺术家、专辑和唯一 ID。
有没有更好的方法来做到这一点?有什么办法可以优化这个?提前致谢。
编辑:
当我第一次运行任何其他音乐播放器时,它们的库包含我拥有的所有歌曲以及元数据。他们的扫描只需要几秒钟。他们是怎么做到的?我究竟做错了什么?