22

I am using a Droid X with rooted Gingerbread that is otherwise stock. I have root access, but have not used it to do anything.

I have inspected the /Music folder multiple times and the 500+ songs I deleted are physically not in the filesystem any more. I tried rebooting the phone multiple times. I tried deleting the Cache and data for the app in Settings > Application, as well as running SDrescan to remount and rescan the card. I even tried deleting them from the music player app itself.

No matter what I try, these songs will not disappear. (Though they obviously fail when I try to play them because they don't exist) Is there a file where the Music library cache is being kept that isn't getting updated? I would love to find it and just delete it.

I also use Songbird for Android, and it had the same problem. New songs show up, but the old ones will not go away at all. Though, now Songbird won't even load at all. Sometimes loading it causes the phone to reboot. I have currently uninstalled it.

In addition, it causes the phone to become very unstable whenever I try to play music. Accidentally playing a non-existent song can cause the phone to crash and get stuck on a black screen, requiring a battery pull and reboot.

5
  • This sounds like a pretty bad bug. I would try deleting the database used by the app, but I'm not sure which one it is. Jun 7, 2011 at 21:59
  • 2
    What data/cache did you clear in setttings? The ones for the Music app (or Songbird) or the ones for the Media Storage system "app"? Usually clearing the latter helps (I seem to recall some saying to unmount->remount the SD card afterward, too). Jun 7, 2011 at 22:32
  • @Matthew Read - Yeah, if I only knew what it was or where it was, I'd do that. Maybe I'll try going in through terminal and seeing what I can do there. Jun 7, 2011 at 22:33
  • @elderathis - Ah! a step in the right direction. Now all the files are missing. Doing an SDrescan might just fix this. Jun 7, 2011 at 22:40
  • @elderathis - Yup, that was it! I'll write up an answer, but if you want to do it, I'll accept yours for figuring it out. Jun 7, 2011 at 23:07

4 Answers 4

22

What I've done in the past (and appears to have worked here, too):

  • Go to Settings->Applications->Manage Applications
  • Clear the data/cache for the Media Storage app (it's a system service/app)
  • Unmount and remount your SD card via some means.

Re-launching a music app after doing this will force it to rebuild the database, which can take a little bit of time but will ultimately refresh the list to reflect the most recent contents of the SD card.

6
  • 7
    SDRescan app will do the same with much less hassle: market.android.com/details?id=com.bero.sdrescan
    – Chahk
    Jun 8, 2011 at 0:42
  • Good work on this :) Jun 8, 2011 at 0:54
  • @Chahk: Boylan made it sound like that didn't work for him without first manually clearing the data/cache, though that's definitely a good resource nonetheless since it saves a manual unmount/remount. Jun 8, 2011 at 1:01
  • Now that I re-read his question I see that he does mention the app by name.
    – Chahk
    Jun 8, 2011 at 13:52
  • I found remounting the SD card insufficient; I had to actually reboot Mar 1, 2012 at 5:34
2

@elderathis actually figured this out in the comments. Apparently, I needed to delete the data/cache for the "Media Storage" app, which I didn't even know existed - but I suspect does all the backend work for media players. I then did a SDrescan to be safe, and now it works!

In addition, the fact that the problem existed in Songbird and the Music app was an indication that it was something deeper in Android than just in each app. So if anyone finds a problem across multiple media players, try deleting the "Media Storage" app data and cache.

2

I had the same problem, deleting the cache of the player I am using, Winamp for Android, did not help as it apparently retrieves the list of media files from the OS.

I solved by deleting (actually renaming) the Android Media Scanner external database:

  1. cd /data/data/com.android.providers.media/databases
  2. mv external.db external.db.off
  3. reboot

After the reboot, the external.db file is automatically recreated and and the media files on my sdcard are magically working, the music artworks are showing up and the World is a better place to be.

0

As Chahk suggested in a comment on the accepted answer, there are apps available that will make Android perform the rescan of your media that most of the answers suggest. I've just started using the app Chahk suggested, SDRescan, and it makes refreshing your media library far simpler than any of the other answers - just start the application and wait a few seconds for it to rescan.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .