我一直在使用以下代码来扫描音频文件.
public voID getSongList() { ContentResolver contentResolver=getContentResolver(); Uri musicUri=androID.provIDer.MediaStore.Audio.Media.EXTERNAL_CONTENT_URI; Cursor musicCursor = contentResolver.query(musicUri,null,null); if(musicCursor!=null && musicCursor.movetoFirst()) { //get columns int TitleColumn = musicCursor.getColumnIndex (androID.provIDer.MediaStore.Audio.Media.Title); int IDColumn = musicCursor.getColumnIndex (androID.provIDer.MediaStore.Audio.Media._ID); int artistColumn = musicCursor.getColumnIndex (androID.provIDer.MediaStore.Audio.Media.ARTIST); int albumIDColumn = musicCursor.getColumnIndex(MediaStore.Audio.Media.ALBUM_ID); //add songs to List do { long thisID = musicCursor.getLong(IDColumn); String thisTitle = musicCursor.getString(TitleColumn); String thisArtist = musicCursor.getString(artistColumn); long thisAlbumID=musicCursor.getLong(albumIDColumn); Uri sArtworkUri = Uri.parse("content://media/external/audio/albumart"); Bitmap albumartBitMap=null; Uri albumartUri = ContentUris.withAppendedID(sArtworkUri,thisAlbumID); try { albumartBitMap = MediaStore.Images.Media.getBitmap(this.getContentResolver(),albumartUri); Matrix m = new Matrix(); m.setRectToRect(new RectF(0,albumartBitMap.getWIDth(),albumartBitMap.getHeight()),new RectF(0,300,300),Matrix.ScaletoFit.CENTER); albumartBitMap = Bitmap.createBitmap(albumartBitMap,albumartBitMap.getHeight(),m,true); } catch (IOException e) { e.printstacktrace(); } songList.add(new Song(thisID,thisTitle,thisArtist,albumartBitMap)); } while (musicCursor.movetoNext()); }}
我希望应用程序只在有新文件时进行扫描.因为如果我每次都扫描整张SD卡,那么启动应用程序需要花费太多时间.请帮帮我
解决方法 无需将所有歌曲保留在本地应用列表中.要显示mp3List,您可以使用带限制的内容提供者光标列表适配器查询(逐页滚动查询)
要直接搜索使用contentprovIDer查询方法.
只在本地数据库上保留一个指向mp3 uri的播放列表.
此链接可能会帮助您:
How to update listview whose data was queried from database through SimpleCursorAdapter?
以上是内存溢出为你收集整理的android – 我想阻止我的音乐播放器应用程序每次应用程序启动时扫描目录中的音频文件.我怎样才能做到这一点?全部内容,希望文章能够帮你解决android – 我想阻止我的音乐播放器应用程序每次应用程序启动时扫描目录中的音频文件.我怎样才能做到这一点?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)