音乐文件在 Google 播放音乐中不可见

Music Files not getting visible in Google Play music

我正在开发一个用于下载歌曲的应用程序。我可以下载歌曲,下载完成后,我将以编程方式将该歌曲移动到其他文件夹。

我面临的问题是,如果我将歌曲移动到另一个文件夹,它在 google 播放音乐中不可见,如果我不将它移动到另一个文件夹,它在 Google 播放音乐,但如果歌曲没有被移动,一旦应用程序被卸载,它就会被删除。 请帮我解决这个问题。我卡在这个功能里了。

谢谢。

您需要在复制新文件后调用 MediaScannerConnection.scanFile(),PlayMusic 应用会看到它

MediaScannerConnection.scanFile(context, new String[]{absolutePathToTheNewFile}, null, new MediaScannerConnection.OnScanCompletedListener() {
    public void onScanCompleted(String path, Uri uri) {

    }

});

根据official docs,如果扫描失败

,传入onScanCompleted(String, Uri)Uri将为空

搜索了 3 天后。我终于找到了解决方案。

    Intent intent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
    intent.setData(Uri.fromFile(new File(Environment.getExternalStorageDirectory(), "/FolderName/"+inputFile)));
    context.sendBroadcast(intent);

下载和移动完成后,我将向默认 Google 音乐库发送广播。

你的新文件夹在SD卡上吗? 因为Google Play Music 应用程序只能看到内部存储中的歌曲,不能看到SD 卡中的歌曲。