رفتن به مطلب
  • 0

مشکل در دریافت عکس آهنگ


kalaleh

سوال

سلام خسته نباشید

من برای دریافت کاور یا عکس آهنگ از این کد که در این تایپیک "اطلاعات فایل موزیک" گزاشته بود استفاده کردم کد به خوبی کار میکنه ولی فایل اهنگ رو از پوشه assest میگیره میخوام از پوشه "File.DirRootExternal,Music/1.mp3" بگیره 

 

Sub btnGetInfo_Click
	
	Private FilePath As String = "1.mp3"
	Log(FilePath)
	Private ImageCover As Bitmap
	Private SongName As String
	ImageCover = NativeMe.RunMethod("getImageCover",Array As Object(FilePath))
	imgCover.Bitmap = ImageCover
	SongName = NativeMe.RunMethod("getNameFile",Array As Object(FilePath))
	lblSongName.Text = SongName
End Sub

#if java

import android.media.MediaMetadataRetriever;
import android.graphics.BitmapFactory ;
import android.graphics.Bitmap;
import android.content.res.AssetFileDescriptor;
import android.content.res.AssetManager;
import java.io.IOException;

public  String getNameFile(String path){
MediaMetadataRetriever mmr = new MediaMetadataRetriever();
 AssetFileDescriptor afd = null;
 try {
 	afd = getAssets().openFd(path);
   } catch (IOException e) {
    e.printStackTrace();
}
     mmr.setDataSource(afd.getFileDescriptor(),afd.getStartOffset(),afd.getLength());
	
	return  mmr.extractMetadata(MediaMetadataRetriever.METADATA_KEY_ALBUM);
}
public Bitmap getImageCover(String imgPath){
   MediaMetadataRetriever mmr = new MediaMetadataRetriever();
   AssetFileDescriptor afd = null;
   try {
 	 afd =getAssets().openFd(imgPath);
   } catch (IOException e) {
    e.printStackTrace();
}

   mmr.setDataSource(afd.getFileDescriptor(),afd.getStartOffset(),afd.getLength());
   byte[] artBytes =  mmr.getEmbeddedPicture();
         if(artBytes!=null)
           {
            	 Bitmap bm = BitmapFactory.decodeByteArray(artBytes, 0, artBytes.length);
				 return bm;
         }
         else
         {
             return null;
         }
}
#End If

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

1 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

سلام

این تیکه از کد رو باید تغییر بدید »

 AssetFileDescriptor afd = null;
 try {
 	afd = getAssets().openFd(path);
   } catch (IOException e) {
    e.printStackTrace();
}

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...