Get audio playlist by name - Android android.media

Android examples for android.media:Audio

Description

Get audio playlist by name

Demo Code

import android.content.ContentResolver;
import android.content.Context;
import android.database.Cursor;
import android.net.Uri;
import android.provider.MediaStore;

public class Main {

  public static long lidForplaylist(Context context, String name) {
    Cursor c = query(context, MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI,
        new String[] { MediaStore.Audio.Playlists._ID }, MediaStore.Audio.Playlists.NAME + "=?", new String[] { name },
        MediaStore.Audio.Playlists.NAME);
    return longFromCursor(c);
  }// w w w  . j  a  v  a2s. c  o  m

  public static Cursor query(Context context, Uri uri, String[] projection, String selection, String[] selectionArgs,
      String sortOrder) {
    return query(context, uri, projection, selection, selectionArgs, sortOrder, 0);
  }

  public static Cursor query(Context context, Uri uri, String[] projection, String selection, String[] selectionArgs,
      String sortOrder, int limit) {
    try {
      ContentResolver resolver = context.getContentResolver();
      if (resolver == null) {
        return null;
      }
      if (limit > 0) {
        uri = uri.buildUpon().appendQueryParameter("limit", "" + limit).build();
      }
      return resolver.query(uri, projection, selection, selectionArgs, sortOrder);
    } catch (UnsupportedOperationException ex) {
      return null;
    }
  }

  private static long longFromCursor(Cursor c) {
    long id = -1;
    if (c != null) {
      c.moveToFirst();
      if (!c.isAfterLast()) {
        id = c.getLong(0);
      }
    }
    c.close();
    return id;
  }

}

Related Tutorials