package org.freemp.droid.playlist;
import android.content.Context;
import android.database.Cursor;
import android.provider.MediaStore;
import android.text.TextUtils;
import com.flurry.android.FlurryAgent;
import org.freemp.droid.ClsTrack;
import java.io.File;
/**
* Created by recoilme on 05/12/13.
*/
public class MakePlaylistMS extends MakePlaylistAbstract {
public MakePlaylistMS(Context context, boolean refresh) {
super(context, refresh);
}
@Override
public void getAllTracks(Context context, boolean refresh) {
String selection = MediaStore.Audio.Media.IS_MUSIC + " != 0";
String[] projection = {
MediaStore.Audio.Media.ARTIST,
MediaStore.Audio.Media.TITLE,
MediaStore.Audio.Media.ALBUM,
MediaStore.Audio.Media.COMPOSER,
MediaStore.Audio.Media.YEAR,
MediaStore.Audio.Media.TRACK,
MediaStore.Audio.Media.DURATION,
MediaStore.Audio.Media.DATA,
MediaStore.Audio.Media.ALBUM_ID
};
Cursor cursor = context.getContentResolver().query(
MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,
projection,
selection,
null,
null);
t = System.currentTimeMillis();
while (cursor.moveToNext()) {
try {
String folder = "";
String path = cursor.getString(7);
String[] pathArray = path.split(
TextUtils.equals(System.getProperty("file.separator"), "") ? "/" : System.getProperty("file.separator")
);
if (pathArray != null && pathArray.length > 1) {
folder = pathArray[pathArray.length - 2];
}
allTracks.add(new ClsTrack(cursor.getString(0),
cursor.getString(1),
cursor.getString(2),
cursor.getString(3),
cursor.getInt(4),
cursor.getInt(5),
cursor.getInt(6),
cursor.getString(7),
folder,
new File(path).lastModified(),
cursor.getInt(8)
));
//Log.w("folder",folder);
} catch (Exception e) {
FlurryAgent.onError("1", "1", e);
e.printStackTrace();
}
}
cursor.close();
logTime();//149ms,89,121 Arrrgh!...
}
}