如何更新Android媒体数据库

abh*_*hek 7 database media android

我的应用程序显示sdcard中的歌曲列表,并且有一个选项可以从SD卡中删除歌曲.

即使删除了歌曲,该歌曲仍会出现在我的应用程序列表中.

如何更新android媒体数据库并显示更新的数据库?

Mar*_*ein 20

Android有各种缓存,可以跟踪媒体文件.

试试这个:

sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse("file://" + Environment.getExternalStorageDirectory())));
Run Code Online (Sandbox Code Playgroud)

它使MediaScanner服务再次运行,这应该从设备的缓存中删除已删除的歌曲.

您还需要将此权限添加到AndroidManifest.xml:

<intent-filter>
  <action android:name="android.intent.action.MEDIA_MOUNTED" />
  <data android:scheme="file" /> 
</intent-filter>
Run Code Online (Sandbox Code Playgroud)