mirror of
https://github.com/TeamNewPipe/NewPipe
synced 2024-12-23 16:40:32 +00:00
Merge pull request #2178 from Redirion/patch-1
Cache duration String to improve performance of background player
This commit is contained in:
commit
1d4e4eb6b3
@ -275,6 +275,8 @@ public final class BackgroundPlayer extends Service {
|
|||||||
protected class BasePlayerImpl extends BasePlayer {
|
protected class BasePlayerImpl extends BasePlayer {
|
||||||
|
|
||||||
@NonNull final private AudioPlaybackResolver resolver;
|
@NonNull final private AudioPlaybackResolver resolver;
|
||||||
|
private int cachedDuration;
|
||||||
|
private String cachedDurationString;
|
||||||
|
|
||||||
BasePlayerImpl(Context context) {
|
BasePlayerImpl(Context context) {
|
||||||
super(context);
|
super(context);
|
||||||
@ -349,10 +351,14 @@ public final class BackgroundPlayer extends Service {
|
|||||||
|
|
||||||
if (!shouldUpdateOnProgress) return;
|
if (!shouldUpdateOnProgress) return;
|
||||||
resetNotification();
|
resetNotification();
|
||||||
if(Build.VERSION.SDK_INT >= 26 /*Oreo*/) updateNotificationThumbnail();
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O /*Oreo*/) updateNotificationThumbnail();
|
||||||
if (bigNotRemoteView != null) {
|
if (bigNotRemoteView != null) {
|
||||||
|
if(cachedDuration != duration) {
|
||||||
|
cachedDuration = duration;
|
||||||
|
cachedDurationString = getTimeString(duration);
|
||||||
|
}
|
||||||
bigNotRemoteView.setProgressBar(R.id.notificationProgressBar, duration, currentProgress, false);
|
bigNotRemoteView.setProgressBar(R.id.notificationProgressBar, duration, currentProgress, false);
|
||||||
bigNotRemoteView.setTextViewText(R.id.notificationTime, getTimeString(currentProgress) + " / " + getTimeString(duration));
|
bigNotRemoteView.setTextViewText(R.id.notificationTime, getTimeString(currentProgress) + " / " + cachedDurationString);
|
||||||
}
|
}
|
||||||
if (notRemoteView != null) {
|
if (notRemoteView != null) {
|
||||||
notRemoteView.setProgressBar(R.id.notificationProgressBar, duration, currentProgress, false);
|
notRemoteView.setProgressBar(R.id.notificationProgressBar, duration, currentProgress, false);
|
||||||
|
Loading…
Reference in New Issue
Block a user