|
23 | 23 | import android.graphics.PorterDuff; |
24 | 24 | import android.graphics.PorterDuffColorFilter; |
25 | 25 | import android.net.Uri; |
26 | | -import android.os.Build; |
27 | 26 | import android.os.Handler; |
28 | 27 | import android.os.Looper; |
29 | 28 | import android.util.Log; |
@@ -1584,28 +1583,23 @@ public void setupVideoSurfaceIfNeeded() { |
1584 | 1583 | // make sure there is nothing left over from previous calls |
1585 | 1584 | clearVideoSurface(); |
1586 | 1585 |
|
1587 | | - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { // >=API23 |
1588 | | - surfaceHolderCallback = new SurfaceHolderCallback(context, player.getExoPlayer()); |
1589 | | - binding.surfaceView.getHolder().addCallback(surfaceHolderCallback); |
| 1586 | + surfaceHolderCallback = new SurfaceHolderCallback(context, player.getExoPlayer()); |
| 1587 | + binding.surfaceView.getHolder().addCallback(surfaceHolderCallback); |
1590 | 1588 |
|
1591 | | - // ensure player is using an unreleased surface, which the surfaceView might not be |
1592 | | - // when starting playback on background or during player switching |
1593 | | - if (binding.surfaceView.getHolder().getSurface().isValid()) { |
1594 | | - // initially set the surface manually otherwise |
1595 | | - // onRenderedFirstFrame() will not be called |
1596 | | - player.getExoPlayer().setVideoSurfaceHolder(binding.surfaceView.getHolder()); |
1597 | | - } |
1598 | | - } else { |
1599 | | - player.getExoPlayer().setVideoSurfaceView(binding.surfaceView); |
| 1589 | + // ensure player is using an unreleased surface, which the surfaceView might not be |
| 1590 | + // when starting playback on background or during player switching |
| 1591 | + if (binding.surfaceView.getHolder().getSurface().isValid()) { |
| 1592 | + // initially set the surface manually otherwise |
| 1593 | + // onRenderedFirstFrame() will not be called |
| 1594 | + player.getExoPlayer().setVideoSurfaceHolder(binding.surfaceView.getHolder()); |
1600 | 1595 | } |
1601 | 1596 |
|
1602 | 1597 | surfaceIsSetup = true; |
1603 | 1598 | } |
1604 | 1599 | } |
1605 | 1600 |
|
1606 | 1601 | private void clearVideoSurface() { |
1607 | | - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M // >=API23 |
1608 | | - && surfaceHolderCallback != null) { |
| 1602 | + if (surfaceHolderCallback != null) { |
1609 | 1603 | binding.surfaceView.getHolder().removeCallback(surfaceHolderCallback); |
1610 | 1604 | surfaceHolderCallback.release(); |
1611 | 1605 | surfaceHolderCallback = null; |
|
0 commit comments