package com.ideabag.playtunes.media;
import android.content.Context;
import android.content.Intent;
import android.media.MediaScannerConnection;
import android.net.Uri;
import android.os.Environment;
public class MusicScanner implements MediaScannerConnection.MediaScannerConnectionClient {
public static final String TAG = "MusicScanner";
private Context mContext;
private MediaScannerConnection mScanner;
public MusicScanner( Context context ) {
mContext = context;
}
public void scan() {
if ( android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.KITKAT ) {
legacyScan();
} else {
mScanner = new MediaScannerConnection( mContext, this );
mScanner.connect();
}
}
private void legacyScan() {
mContext.sendBroadcast( new Intent( Intent.ACTION_MEDIA_MOUNTED, Uri.parse( "file://" + Environment.getExternalStorageDirectory() ) ) );
}
@Override public void onMediaScannerConnected() {
mScanner.scanFile( "file://" + Environment.getExternalStorageDirectory(), null );
}
@Override public void onScanCompleted(String path, Uri uri) {
android.util.Log.i( TAG, "Completed " + path);
//mScanner.disconnect();
}
}