Disabled disk cache for album covers
This commit is contained in:
parent
533708e63d
commit
2e5b17be38
16 changed files with 42 additions and 15 deletions
|
|
@ -133,7 +133,7 @@ public class AlbumCoverPagerAdapter extends CustomFragmentStatePagerAdapter {
|
||||||
.loadFromMediaStore(MusicUtil.getAlbumArtUri(song.albumId))
|
.loadFromMediaStore(MusicUtil.getAlbumArtUri(song.albumId))
|
||||||
.asBitmap()
|
.asBitmap()
|
||||||
.transcode(new BitmapPaletteTranscoder(getActivity()), BitmapPaletteWrapper.class)
|
.transcode(new BitmapPaletteTranscoder(getActivity()), BitmapPaletteWrapper.class)
|
||||||
.diskCacheStrategy(DiskCacheStrategy.ALL)
|
.diskCacheStrategy(DiskCacheStrategy.NONE)
|
||||||
.error(R.drawable.default_album_art)
|
.error(R.drawable.default_album_art)
|
||||||
.signature(new MediaStoreSignature("", song.dateModified, 0))
|
.signature(new MediaStoreSignature("", song.dateModified, 0))
|
||||||
.into(new PhonographColoredTarget(albumCover) {
|
.into(new PhonographColoredTarget(albumCover) {
|
||||||
|
|
|
||||||
|
|
@ -99,7 +99,7 @@ public class SearchAdapter extends RecyclerView.Adapter<SearchAdapter.ViewHolder
|
||||||
holder.text.setText(album.getArtistName());
|
holder.text.setText(album.getArtistName());
|
||||||
Glide.with(activity)
|
Glide.with(activity)
|
||||||
.loadFromMediaStore(MusicUtil.getAlbumArtUri(album.getId()))
|
.loadFromMediaStore(MusicUtil.getAlbumArtUri(album.getId()))
|
||||||
.diskCacheStrategy(DiskCacheStrategy.ALL)
|
.diskCacheStrategy(DiskCacheStrategy.NONE)
|
||||||
.error(R.drawable.default_album_art)
|
.error(R.drawable.default_album_art)
|
||||||
.animate(android.R.anim.fade_in)
|
.animate(android.R.anim.fade_in)
|
||||||
.signature(new MediaStoreSignature("", album.getDateModified(), 0))
|
.signature(new MediaStoreSignature("", album.getDateModified(), 0))
|
||||||
|
|
@ -111,7 +111,7 @@ public class SearchAdapter extends RecyclerView.Adapter<SearchAdapter.ViewHolder
|
||||||
holder.text.setText(MusicUtil.getArtistInfoString(activity, artist));
|
holder.text.setText(MusicUtil.getArtistInfoString(activity, artist));
|
||||||
Glide.with(activity)
|
Glide.with(activity)
|
||||||
.load(new ArtistImageRequest(artist.name, false))
|
.load(new ArtistImageRequest(artist.name, false))
|
||||||
.diskCacheStrategy(DiskCacheStrategy.NONE)
|
.diskCacheStrategy(DiskCacheStrategy.SOURCE)
|
||||||
.error(R.drawable.default_album_art)
|
.error(R.drawable.default_album_art)
|
||||||
.animate(android.R.anim.fade_in)
|
.animate(android.R.anim.fade_in)
|
||||||
.signature(ArtistSignatureUtil.getInstance(activity).getArtistSignature(artist.name))
|
.signature(ArtistSignatureUtil.getInstance(activity).getArtistSignature(artist.name))
|
||||||
|
|
|
||||||
|
|
@ -124,7 +124,7 @@ public class AlbumAdapter extends AbsMultiSelectAdapter<AlbumAdapter.ViewHolder,
|
||||||
.loadFromMediaStore(MusicUtil.getAlbumArtUri(album.getId()))
|
.loadFromMediaStore(MusicUtil.getAlbumArtUri(album.getId()))
|
||||||
.asBitmap()
|
.asBitmap()
|
||||||
.transcode(new BitmapPaletteTranscoder(activity), BitmapPaletteWrapper.class)
|
.transcode(new BitmapPaletteTranscoder(activity), BitmapPaletteWrapper.class)
|
||||||
.diskCacheStrategy(DiskCacheStrategy.ALL)
|
.diskCacheStrategy(DiskCacheStrategy.NONE)
|
||||||
.error(R.drawable.default_album_art)
|
.error(R.drawable.default_album_art)
|
||||||
.animate(android.R.anim.fade_in)
|
.animate(android.R.anim.fade_in)
|
||||||
.signature(new MediaStoreSignature("", album.getDateModified(), 0))
|
.signature(new MediaStoreSignature("", album.getDateModified(), 0))
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,7 @@ import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
|
|
||||||
import com.bumptech.glide.Glide;
|
import com.bumptech.glide.Glide;
|
||||||
|
import com.bumptech.glide.Priority;
|
||||||
import com.bumptech.glide.load.engine.DiskCacheStrategy;
|
import com.bumptech.glide.load.engine.DiskCacheStrategy;
|
||||||
import com.kabouzeid.gramophone.R;
|
import com.kabouzeid.gramophone.R;
|
||||||
import com.kabouzeid.gramophone.adapter.base.AbsMultiSelectAdapter;
|
import com.kabouzeid.gramophone.adapter.base.AbsMultiSelectAdapter;
|
||||||
|
|
@ -123,9 +124,10 @@ public class ArtistAdapter extends AbsMultiSelectAdapter<ArtistAdapter.ViewHolde
|
||||||
.load(new ArtistImageRequest(artist.name, false))
|
.load(new ArtistImageRequest(artist.name, false))
|
||||||
.asBitmap()
|
.asBitmap()
|
||||||
.transcode(new BitmapPaletteTranscoder(activity), BitmapPaletteWrapper.class)
|
.transcode(new BitmapPaletteTranscoder(activity), BitmapPaletteWrapper.class)
|
||||||
.diskCacheStrategy(DiskCacheStrategy.ALL)
|
.diskCacheStrategy(DiskCacheStrategy.SOURCE)
|
||||||
.error(R.drawable.default_album_art)
|
.error(R.drawable.default_album_art)
|
||||||
.animate(android.R.anim.fade_in)
|
.animate(android.R.anim.fade_in)
|
||||||
|
.priority(Priority.LOW)
|
||||||
.signature(ArtistSignatureUtil.getInstance(activity).getArtistSignature(artist.name))
|
.signature(ArtistSignatureUtil.getInstance(activity).getArtistSignature(artist.name))
|
||||||
.into(new PhonographColoredTarget(holder.image) {
|
.into(new PhonographColoredTarget(holder.image) {
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
|
|
@ -77,7 +77,7 @@ public class ArtistSongAdapter extends ArrayAdapter<Song> implements MaterialCab
|
||||||
|
|
||||||
Glide.with(activity)
|
Glide.with(activity)
|
||||||
.loadFromMediaStore(MusicUtil.getAlbumArtUri(song.albumId))
|
.loadFromMediaStore(MusicUtil.getAlbumArtUri(song.albumId))
|
||||||
.diskCacheStrategy(DiskCacheStrategy.ALL)
|
.diskCacheStrategy(DiskCacheStrategy.NONE)
|
||||||
.error(R.drawable.default_album_art)
|
.error(R.drawable.default_album_art)
|
||||||
.animate(android.R.anim.fade_in)
|
.animate(android.R.anim.fade_in)
|
||||||
.signature(new MediaStoreSignature("", song.dateModified, 0))
|
.signature(new MediaStoreSignature("", song.dateModified, 0))
|
||||||
|
|
|
||||||
|
|
@ -126,7 +126,7 @@ public class SongAdapter extends AbsMultiSelectAdapter<SongAdapter.ViewHolder, S
|
||||||
.loadFromMediaStore(MusicUtil.getAlbumArtUri(song.albumId))
|
.loadFromMediaStore(MusicUtil.getAlbumArtUri(song.albumId))
|
||||||
.asBitmap()
|
.asBitmap()
|
||||||
.transcode(new BitmapPaletteTranscoder(activity), BitmapPaletteWrapper.class)
|
.transcode(new BitmapPaletteTranscoder(activity), BitmapPaletteWrapper.class)
|
||||||
.diskCacheStrategy(DiskCacheStrategy.ALL)
|
.diskCacheStrategy(DiskCacheStrategy.NONE)
|
||||||
.error(R.drawable.default_album_art)
|
.error(R.drawable.default_album_art)
|
||||||
.animate(android.R.anim.fade_in)
|
.animate(android.R.anim.fade_in)
|
||||||
.signature(new MediaStoreSignature("", song.dateModified, 0))
|
.signature(new MediaStoreSignature("", song.dateModified, 0))
|
||||||
|
|
|
||||||
|
|
@ -89,7 +89,7 @@ public class WidgetMedium extends AppWidgetProvider {
|
||||||
Glide.with(context)
|
Glide.with(context)
|
||||||
.loadFromMediaStore(MusicUtil.getAlbumArtUri(song.albumId))
|
.loadFromMediaStore(MusicUtil.getAlbumArtUri(song.albumId))
|
||||||
.asBitmap()
|
.asBitmap()
|
||||||
.diskCacheStrategy(DiskCacheStrategy.ALL)
|
.diskCacheStrategy(DiskCacheStrategy.NONE)
|
||||||
.signature(new MediaStoreSignature("", song.dateModified, 0))
|
.signature(new MediaStoreSignature("", song.dateModified, 0))
|
||||||
.into(target);
|
.into(target);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -199,7 +199,7 @@ public class PlayingNotificationHelper {
|
||||||
.loadFromMediaStore(MusicUtil.getAlbumArtUri(currentSong.albumId))
|
.loadFromMediaStore(MusicUtil.getAlbumArtUri(currentSong.albumId))
|
||||||
.asBitmap()
|
.asBitmap()
|
||||||
.transcode(new BitmapPaletteTranscoder(service), BitmapPaletteWrapper.class)
|
.transcode(new BitmapPaletteTranscoder(service), BitmapPaletteWrapper.class)
|
||||||
.diskCacheStrategy(DiskCacheStrategy.ALL)
|
.diskCacheStrategy(DiskCacheStrategy.NONE)
|
||||||
.signature(new MediaStoreSignature("", currentSong.dateModified, 0))
|
.signature(new MediaStoreSignature("", currentSong.dateModified, 0))
|
||||||
.into(target);
|
.into(target);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -449,7 +449,7 @@ public class MusicService extends Service implements SharedPreferences.OnSharedP
|
||||||
final BitmapRequestBuilder request = Glide.with(MusicService.this)
|
final BitmapRequestBuilder request = Glide.with(MusicService.this)
|
||||||
.loadFromMediaStore(MusicUtil.getAlbumArtUri(song.albumId))
|
.loadFromMediaStore(MusicUtil.getAlbumArtUri(song.albumId))
|
||||||
.asBitmap()
|
.asBitmap()
|
||||||
.diskCacheStrategy(DiskCacheStrategy.ALL)
|
.diskCacheStrategy(DiskCacheStrategy.NONE)
|
||||||
.signature(new MediaStoreSignature("", song.dateModified, 0));
|
.signature(new MediaStoreSignature("", song.dateModified, 0));
|
||||||
if (blurAlbumArt) {
|
if (blurAlbumArt) {
|
||||||
request.transform(new BlurTransformation.Builder(MusicService.this).build());
|
request.transform(new BlurTransformation.Builder(MusicService.this).build());
|
||||||
|
|
|
||||||
|
|
@ -158,7 +158,7 @@ public class AlbumDetailActivity extends AbsSlidingMusicPanelActivity implements
|
||||||
.loadFromMediaStore(MusicUtil.getAlbumArtUri(album.getId()))
|
.loadFromMediaStore(MusicUtil.getAlbumArtUri(album.getId()))
|
||||||
.asBitmap()
|
.asBitmap()
|
||||||
.transcode(new BitmapPaletteTranscoder(this), BitmapPaletteWrapper.class)
|
.transcode(new BitmapPaletteTranscoder(this), BitmapPaletteWrapper.class)
|
||||||
.diskCacheStrategy(DiskCacheStrategy.ALL)
|
.diskCacheStrategy(DiskCacheStrategy.NONE)
|
||||||
.error(R.drawable.default_album_art)
|
.error(R.drawable.default_album_art)
|
||||||
.signature(new MediaStoreSignature("", album.getDateModified(), 0))
|
.signature(new MediaStoreSignature("", album.getDateModified(), 0))
|
||||||
.into(new PhonographColoredTarget(albumArtImageView) {
|
.into(new PhonographColoredTarget(albumArtImageView) {
|
||||||
|
|
|
||||||
|
|
@ -258,7 +258,7 @@ public class ArtistDetailActivity extends AbsSlidingMusicPanelActivity implement
|
||||||
.load(new ArtistImageRequest(artist.name, forceDownload))
|
.load(new ArtistImageRequest(artist.name, forceDownload))
|
||||||
.asBitmap()
|
.asBitmap()
|
||||||
.transcode(new BitmapPaletteTranscoder(this), BitmapPaletteWrapper.class)
|
.transcode(new BitmapPaletteTranscoder(this), BitmapPaletteWrapper.class)
|
||||||
.diskCacheStrategy(DiskCacheStrategy.ALL)
|
.diskCacheStrategy(DiskCacheStrategy.SOURCE)
|
||||||
.error(R.drawable.default_album_art)
|
.error(R.drawable.default_album_art)
|
||||||
.signature(ArtistSignatureUtil.getInstance(this).getArtistSignature(artist.name))
|
.signature(ArtistSignatureUtil.getInstance(this).getArtistSignature(artist.name))
|
||||||
.into(new PhonographColoredTarget(artistImage) {
|
.into(new PhonographColoredTarget(artistImage) {
|
||||||
|
|
|
||||||
|
|
@ -277,7 +277,7 @@ public class MainActivity extends AbsSlidingMusicPanelActivity
|
||||||
((TextView) navigationDrawerHeader.findViewById(R.id.text)).setText(song.artistName);
|
((TextView) navigationDrawerHeader.findViewById(R.id.text)).setText(song.artistName);
|
||||||
Glide.with(this)
|
Glide.with(this)
|
||||||
.loadFromMediaStore(MusicUtil.getAlbumArtUri(song.albumId))
|
.loadFromMediaStore(MusicUtil.getAlbumArtUri(song.albumId))
|
||||||
.diskCacheStrategy(DiskCacheStrategy.ALL)
|
.diskCacheStrategy(DiskCacheStrategy.NONE)
|
||||||
.error(R.drawable.default_album_art)
|
.error(R.drawable.default_album_art)
|
||||||
.animate(android.R.anim.fade_in)
|
.animate(android.R.anim.fade_in)
|
||||||
.signature(new MediaStoreSignature("", song.dateModified, 0))
|
.signature(new MediaStoreSignature("", song.dateModified, 0))
|
||||||
|
|
|
||||||
|
|
@ -116,7 +116,7 @@ public class AlbumTagEditorActivity extends AbsTagEditorActivity implements Text
|
||||||
.load(url)
|
.load(url)
|
||||||
.asBitmap()
|
.asBitmap()
|
||||||
.transcode(new BitmapPaletteTranscoder(AlbumTagEditorActivity.this), BitmapPaletteWrapper.class)
|
.transcode(new BitmapPaletteTranscoder(AlbumTagEditorActivity.this), BitmapPaletteWrapper.class)
|
||||||
.diskCacheStrategy(DiskCacheStrategy.ALL)
|
.diskCacheStrategy(DiskCacheStrategy.SOURCE)
|
||||||
.error(R.drawable.default_album_art)
|
.error(R.drawable.default_album_art)
|
||||||
.into(new SimpleTarget<BitmapPaletteWrapper>() {
|
.into(new SimpleTarget<BitmapPaletteWrapper>() {
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
|
|
@ -47,7 +47,6 @@ public class PlayerAlbumCoverFragment extends AbsMusicServiceFragment implements
|
||||||
@Override
|
@Override
|
||||||
public void onViewCreated(View view, Bundle savedInstanceState) {
|
public void onViewCreated(View view, Bundle savedInstanceState) {
|
||||||
super.onViewCreated(view, savedInstanceState);
|
super.onViewCreated(view, savedInstanceState);
|
||||||
viewPager.setOffscreenPageLimit(2);
|
|
||||||
updatePlayingQueue();
|
updatePlayingQueue();
|
||||||
viewPager.addOnPageChangeListener(this);
|
viewPager.addOnPageChangeListener(this);
|
||||||
viewPager.setOnTouchListener(new View.OnTouchListener() {
|
viewPager.setOnTouchListener(new View.OnTouchListener() {
|
||||||
|
|
|
||||||
|
|
@ -157,6 +157,11 @@ public class PlayerFragment extends AbsPlayerFragment implements PlayerAlbumCove
|
||||||
updateQueue();
|
updateQueue();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onMediaStoreChanged() {
|
||||||
|
updateQueue();
|
||||||
|
}
|
||||||
|
|
||||||
private void updateQueue() {
|
private void updateQueue() {
|
||||||
playingQueueAdapter.swapDataSet(MusicPlayerRemote.getPlayingQueue(), MusicPlayerRemote.getPosition());
|
playingQueueAdapter.swapDataSet(MusicPlayerRemote.getPlayingQueue(), MusicPlayerRemote.getPosition());
|
||||||
if (slidingUpPanelLayout.getPanelState() == SlidingUpPanelLayout.PanelState.COLLAPSED) {
|
if (slidingUpPanelLayout.getPanelState() == SlidingUpPanelLayout.PanelState.COLLAPSED) {
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,9 @@ import android.support.v7.graphics.Palette;
|
||||||
|
|
||||||
import com.kabouzeid.gramophone.R;
|
import com.kabouzeid.gramophone.R;
|
||||||
|
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.Comparator;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Karim Abou Zeid (kabouzeid)
|
* @author Karim Abou Zeid (kabouzeid)
|
||||||
*/
|
*/
|
||||||
|
|
@ -43,11 +46,29 @@ public class ColorUtil {
|
||||||
return palette.getLightVibrantSwatch().getRgb();
|
return palette.getLightVibrantSwatch().getRgb();
|
||||||
} else if (palette.getLightMutedSwatch() != null) {
|
} else if (palette.getLightMutedSwatch() != null) {
|
||||||
return palette.getLightMutedSwatch().getRgb();
|
return palette.getLightMutedSwatch().getRgb();
|
||||||
|
} else if (palette.getSwatches() != null && !palette.getSwatches().isEmpty()) {
|
||||||
|
return Collections.max(palette.getSwatches(), SwatchComparator.getInstance()).getRgb();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return fallback;
|
return fallback;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static class SwatchComparator implements Comparator<Palette.Swatch> {
|
||||||
|
private static SwatchComparator sInstance;
|
||||||
|
|
||||||
|
static SwatchComparator getInstance() {
|
||||||
|
if (sInstance == null) {
|
||||||
|
sInstance = new SwatchComparator();
|
||||||
|
}
|
||||||
|
return sInstance;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int compare(Palette.Swatch lhs, Palette.Swatch rhs) {
|
||||||
|
return lhs.getPopulation() - rhs.getPopulation();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@ColorInt
|
@ColorInt
|
||||||
public static int resolveColor(@NonNull Context context, @AttrRes int colorAttr) {
|
public static int resolveColor(@NonNull Context context, @AttrRes int colorAttr) {
|
||||||
TypedArray a = context.obtainStyledAttributes(new int[]{colorAttr});
|
TypedArray a = context.obtainStyledAttributes(new int[]{colorAttr});
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue