gpt4 book ai didi

android - 从android中的SD卡获取歌曲路径

转载 作者:太空狗 更新时间:2023-10-29 15:55:24 27 4
gpt4 key购买 nike

在我的 android 应用程序中,我想从 SD 卡中获取歌曲,但我无法获取该特定文件的路径。我使用的是不支持以下方法的 android api level 7。

Environment.getExternalStoragePublicDirectory (Environment.DIRECTORY_MUSIC);

我也试过下面的代码:

path = Environment.getExternalStorageDirectory();

但我不知道如何指定音乐文件的路径。请提出一些解决方案。谢谢。

最佳答案

从 SD 卡获取路径和歌曲名称。您可以从 MediaStore 中找到歌曲的路径。

媒体提供者包含内部和外部存储设备上所有可用媒体的元数据。

private String[] STAR = { "*" };

public void ListAllSongs()
{
Cursor cursor;
Uri allsongsuri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
String selection = MediaStore.Audio.Media.IS_MUSIC + " != 0";

if (isSdPresent()) {
cursor = getContentResolver().query(allsongsuri, STAR, selection, null, null);

if (cursor != null) {
if (cursor.moveToFirst()) {
do {
String songname = cursor
.getString(cursor
.getColumnIndex(MediaStore.Audio.Media.DISPLAY_NAME));
int song_id = cursor.getInt(cursor
.getColumnIndex(MediaStore.Audio.Media._ID));

String fullpath = cursor.getString(cursor
.getColumnIndex(MediaStore.Audio.Media.DATA));

String albumname = cursor.getString(cursor
.getColumnIndex(MediaStore.Audio.Media.ALBUM));

} while (cursor.moveToNext());
}
cursor.close();
}
}
}


public static boolean isSdPresent()
{
return android.os.Environment.getExternalStorageState().equals(
android.os.Environment.MEDIA_MOUNTED);
}

关于android - 从android中的SD卡获取歌曲路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12227023/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com