代码如下:
ContentResolver cr =this.getContentResolver();
Cursor tempCur = cr.query(
MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,
/*new String[]{
MediaStore.Audio.Media._ID, //int
MediaStore.Audio.Media.DATA, //String
MediaStore.Audio.Media.DISPLAY_NAME, //String
MediaStore.Audio.Media.MIME_TYPE //String
}*/
null,//无论取null还是上边的数组都是一样的
null, null, MediaStore.Audio.Media.DEFAULT_SORT_ORDER); //order取null也是一样的
if(tempCur!=null){
if(D)Log.d(TAG,"Cursor.getCount in Audio"+tempCur.getCount());
}else{
if(D)Log.d(TAG,"Cursor.getCount in Audio is NULL");
}manifest 权限 :<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>在我自己的手机上调试 moto defy+ (因为虚拟机里木有多媒体文件...懒得弄...)
手机里有一堆歌...catlog:
06-27 23:29:38.139: D/Puzzle_Config(16872): Cursor.getCount in Audio is NULL
肿么破...
if(D)Log.d(TAG,"ContentResolver is "+cr.toString());
}else{
if(D)Log.d(TAG,"ContentResolver is NULL");
}
if(tempCur!=null){
if(D)Log.d(TAG,"Cursor.getCount in Audio"+tempCur.getCount());
}else{
if(D)Log.d(TAG,"Cursor in Audio is NULL");
}06-28 11:26:28.030: D/Puzzle_Config(18425): ContentResolver is android.app.ContextImpl$ApplicationContentResolver@40501910
06-28 11:26:28.030: D/Puzzle_Config(18425): Cursor in Audio is NULL
cr不是NULL
tempCur是NULL
06-28 12:00:57.171: D/Puzzle_Config(18959): URI : content://media/external/audio/media
MediaStore.Audio.Media.DATA= “data”
MediaStore.Audio.Media.DISPLAY_NAME=“displayName”
MediaStore.Audio.Media.MIME_TYPE=“mimeType”/*new String[]{
MediaStore.Audio.Media._ID, //int
MediaStore.Audio.Media.DATA, //String
MediaStore.Audio.Media.DISPLAY_NAME, //String
MediaStore.Audio.Media.MIME_TYPE //String
}*/修改成new String[]{
"_id","data,"displayName","mimeType"
}
额...不是这里的问题...我发现是我犯了个相当2的错误=.= 不过还是谢谢了
,也范啦这个问题,不知道怎么解决,你是怎么弄的