Example usage for android.support.v4.media RatingCompat newHeartRating

List of usage examples for android.support.v4.media RatingCompat newHeartRating

Introduction

In this page you can find the example usage for android.support.v4.media RatingCompat newHeartRating.

Prototype

public static RatingCompat newHeartRating(boolean hasHeart) 

Source Link

Document

Return a Rating instance with a heart-based rating.

Usage

From source file:androidx.media.MediaUtils2.java

/**
 * Creates a {@link RatingCompat} from the {@link Rating2}.
 *
 * @param rating2 A {@link Rating2} object.
 * @return The newly created {@link RatingCompat} object.
 *//*from   ww w .j  a  v  a 2  s  .c o  m*/
RatingCompat createRatingCompat(Rating2 rating2) {
    if (rating2 == null) {
        return null;
    }
    if (!rating2.isRated()) {
        return RatingCompat.newUnratedRating(rating2.getRatingStyle());
    }

    switch (rating2.getRatingStyle()) {
    case Rating2.RATING_3_STARS:
    case Rating2.RATING_4_STARS:
    case Rating2.RATING_5_STARS:
        return RatingCompat.newStarRating(rating2.getRatingStyle(), rating2.getStarRating());
    case Rating2.RATING_HEART:
        return RatingCompat.newHeartRating(rating2.hasHeart());
    case Rating2.RATING_THUMB_UP_DOWN:
        return RatingCompat.newThumbRating(rating2.isThumbUp());
    case Rating2.RATING_PERCENTAGE:
        return RatingCompat.newPercentageRating(rating2.getPercentRating());
    default:
        return null;
    }
}

From source file:org.runbuddy.tomahawk.services.PlaybackService.java

private MediaMetadataCompat buildMetadata() {
    final Query currentQuery = mPlaybackManager.getCurrentQuery();
    MediaMetadataCompat.Builder builder = new MediaMetadataCompat.Builder();

    if (currentQuery != null) {
        builder.putString(MediaMetadataCompat.METADATA_KEY_MEDIA_ID,
                mPlaybackManager.getCurrentEntry().getCacheKey())
                .putString(MediaMetadataCompat.METADATA_KEY_ALBUM_ARTIST,
                        currentQuery.getArtist().getPrettyName())
                .putString(MediaMetadataCompat.METADATA_KEY_ARTIST, currentQuery.getArtist().getPrettyName())
                .putString(MediaMetadataCompat.METADATA_KEY_TITLE, currentQuery.getPrettyName())
                .putLong(MediaMetadataCompat.METADATA_KEY_DURATION,
                        currentQuery.getPreferredTrack().getDuration())
                .putRating(MediaMetadataCompat.METADATA_KEY_USER_RATING,
                        RatingCompat.newHeartRating(DatabaseHelper.get().isItemLoved(currentQuery)));
        if (!currentQuery.getAlbum().getName().isEmpty()) {
            builder.putString(MediaMetadataCompat.METADATA_KEY_ALBUM, currentQuery.getAlbum().getPrettyName());
        }/*w w w. j av a  2  s  .  c o m*/
        Bitmap bitmap;
        if (currentQuery.getImage() != null) {
            bitmap = mMediaImageCache.get(currentQuery.getImage());
        } else {
            bitmap = mCachedPlaceHolder;
        }
        if (bitmap == null) {
            // Image is not in cache yet. We have to fetch it...
            new Handler(Looper.getMainLooper()).post(new Runnable() {
                @Override
                public void run() {
                    if (mMediaImageTarget == null
                            || mMediaImageTarget.mImageToLoad != currentQuery.getImage()) {
                        mMediaImageTarget = new MediaImageTarget(currentQuery.getImage());
                        ImageUtils.loadImageIntoBitmap(TomahawkApp.getContext(), currentQuery.getImage(),
                                mMediaImageTarget, Image.getLargeImageSize(), false);
                    }
                }
            });
        }
        if (bitmap != null) {
            builder.putBitmap(MediaMetadataCompat.METADATA_KEY_ALBUM_ART, bitmap);
        }
    } else if (mPlaybackManager.getPlaylist() instanceof StationPlaylist) {
        builder.putString(MediaMetadataCompat.METADATA_KEY_DISPLAY_TITLE,
                getString(R.string.loading_station) + " " + mPlaybackManager.getPlaylist().getName());
    }
    return builder.build();
}