mirror of
				https://github.com/TeamNewPipe/NewPipe
				synced 2025-10-31 07:13:00 +00:00 
			
		
		
		
	Merge pull request #2771 from atpamat/background-player-notif-lag
Limit amount of notification thumbnail updates in background player
This commit is contained in:
		| @@ -95,6 +95,9 @@ public final class BackgroundPlayer extends Service { | ||||
|  | ||||
|     private boolean shouldUpdateOnProgress; | ||||
|  | ||||
|     private static final int NOTIFICATION_UPDATES_BEFORE_RESET = 60; | ||||
|     private int timesNotificationUpdated; | ||||
|  | ||||
|     /*////////////////////////////////////////////////////////////////////////// | ||||
|     // Service's LifeCycle | ||||
|     //////////////////////////////////////////////////////////////////////////*/ | ||||
| @@ -180,6 +183,7 @@ public final class BackgroundPlayer extends Service { | ||||
|  | ||||
|     private void resetNotification() { | ||||
|         notBuilder = createNotification(); | ||||
|         timesNotificationUpdated = 0; | ||||
|     } | ||||
|  | ||||
|     private NotificationCompat.Builder createNotification() { | ||||
| @@ -252,6 +256,7 @@ public final class BackgroundPlayer extends Service { | ||||
|             if (bigNotRemoteView != null) bigNotRemoteView.setImageViewResource(R.id.notificationPlayPause, drawableId); | ||||
|         } | ||||
|         notificationManager.notify(NOTIFICATION_ID, notBuilder.build()); | ||||
|         timesNotificationUpdated++; | ||||
|     } | ||||
|  | ||||
|     /*////////////////////////////////////////////////////////////////////////// | ||||
| @@ -351,8 +356,10 @@ public final class BackgroundPlayer extends Service { | ||||
|             updateProgress(currentProgress, duration, bufferPercent); | ||||
|  | ||||
|             if (!shouldUpdateOnProgress) return; | ||||
|             if (timesNotificationUpdated > NOTIFICATION_UPDATES_BEFORE_RESET) { | ||||
|                 resetNotification(); | ||||
|                 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O /*Oreo*/) updateNotificationThumbnail(); | ||||
|             } | ||||
|             if (bigNotRemoteView != null) { | ||||
|                 if(cachedDuration != duration) { | ||||
|                     cachedDuration = duration; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Tobias Groza
					Tobias Groza