从应用程序中读取存储卡数据

时间:2012-03-17 04:32:10

标签: android

我正在编写一个应用程序。当我点击一个按钮时,它必须从存储卡中读取数据(铃声)并在我创建的列表视图中显示它。如何从应用程序中读取存储卡数据?< / p>

5 个答案:

答案 0 :(得分:1)

查看“使用外部存储空间”here。 Android有一个很棒的开发网站。希望这是你想要的。

答案 1 :(得分:1)

您可以获得SD卡的路径:

File extStore = Environment.getExternalStorageDirectory();

然后给出foldername和文件名 例如:

"/audios/ringtone1.extension"

答案 2 :(得分:0)

检查这些链接。它可能对你有帮助..

Android File System

ReadData from SDCard

答案 3 :(得分:0)

为此目的,您需要使用Android的Environment Class。

请查看此link。您将在那里获得有关它的所有详细信息。

答案 4 :(得分:0)

参考,

if(path != null){

File k = new File(path, "moment.mp3");

ContentValues values = new ContentValues();
values.put(MediaStore.MediaColumns.DATA, k.getAbsolutePath());
values.put(MediaStore.MediaColumns.TITLE, "My Song title");
values.put(MediaStore.MediaColumns.MIME_TYPE, "audio/mpeg");
values.put(MediaStore.Audio.Media.ARTIST, "Some Artist");
values.put(MediaStore.Audio.Media.IS_RINGTONE, false);
values.put(MediaStore.Audio.Media.IS_NOTIFICATION, true);
values.put(MediaStore.Audio.Media.IS_ALARM, false);
values.put(MediaStore.Audio.Media.IS_MUSIC, false);

//Insert it into the database
Uri uri = MediaStore.Audio.Media.getContentUriForPath(k.getAbsolutePath());
Uri newUri = getContentResolver().insert(uri, values);

RingtoneManager.setActualDefaultRingtoneUri(
  MainActivity.this,
  RingtoneManager.TYPE_NOTIFICATION,
  newUri
);