2011-09-06 131 views
1

我正在開發一種適用於android的媒體播放器,想要獲得專輯封面並使用此代碼。Android專輯藝術

Uri sArtworkUri = Uri.parse("content://media/external/audio/albumart"); 
    Uri uri = ContentUris.withAppendedId(sArtworkUri, album_id); 
    ContentResolver res = context.getContentResolver(); 
    try { 
      in = res.openInputStream(uri); 
     } catch (FileNotFoundException e1) { 
      // TODO Auto-generated catch block 
      e1.printStackTrace(); 
     } 
    Bitmap artwork = BitmapFactory.decodeStream(in); 

,但我得到FileNotfoundExeption,和藝術品設置爲null(

這裏是logcat的

09-06 14:55:56.713: ERROR/MetadataRetrieverClient(34): failed to extract an album art 
09-06 14:55:56.723: WARN/System.err(536): java.io.FileNotFoundException: No entry for content://media/external/audio/albumart/1 
09-06 14:55:56.733: WARN/System.err(536):  at android.database.DatabaseUtils.readExceptionWithFileNotFoundExceptionFromParcel(DatabaseUtils.java:123) 
09-06 14:55:56.733: WARN/System.err(536):  at android.content.ContentProviderProxy.openAssetFile(ContentProviderNative.java:538) 
09-06 14:55:56.733: WARN/System.err(536):  at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:484) 
09-06 14:55:56.733: WARN/System.err(536):  at android.content.ContentResolver.openInputStream(ContentResolver.java:319) 
09-06 14:55:56.733: WARN/System.err(536):  at player.org.Progress.onCreate(Progress.java:92) 
09-06 14:55:56.733: WARN/System.err(536):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 
09-06 14:55:56.733: WARN/System.err(536):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611) 
09-06 14:55:56.733: WARN/System.err(536):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663) 
09-06 14:55:56.743: WARN/System.err(536):  at android.app.ActivityThread.access$1500(ActivityThread.java:117) 
09-06 14:55:56.743: WARN/System.err(536):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931) 
09-06 14:55:56.743: WARN/System.err(536):  at android.os.Handler.dispatchMessage(Handler.java:99) 
09-06 14:55:56.743: WARN/System.err(536):  at android.os.Looper.loop(Looper.java:123) 
09-06 14:55:56.743: WARN/System.err(536):  at android.app.ActivityThread.main(ActivityThread.java:3683) 
09-06 14:55:56.743: WARN/System.err(536):  at java.lang.reflect.Method.invokeNative(Native Method) 
09-06 14:55:56.743: WARN/System.err(536):  at java.lang.reflect.Method.invoke(Method.java:507) 
09-06 14:55:56.743: WARN/System.err(536):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 
09-06 14:55:56.743: WARN/System.err(536):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 
09-06 14:55:56.753: WARN/System.err(536):  at dalvik.system.NativeStart.main(Native Method) 
+0

我只是無法確定,爲什麼albumart找不到? –

回答

0

我與similar problem麻煩,所以我可以提出一對夫婦的檢查:

  1. 您確定在您身邊外部媒體(即SD卡)有mp3嗎?
  2. 您確定album_id = 1作爲ALBUM_ID存在嗎?