summaryrefslogtreecommitdiff
path: root/android/sdl_android/src/main/java/com/smartdevicelink/managers/video/VideoStreamManager.java
diff options
context:
space:
mode:
Diffstat (limited to 'android/sdl_android/src/main/java/com/smartdevicelink/managers/video/VideoStreamManager.java')
-rw-r--r--android/sdl_android/src/main/java/com/smartdevicelink/managers/video/VideoStreamManager.java13
1 files changed, 10 insertions, 3 deletions
diff --git a/android/sdl_android/src/main/java/com/smartdevicelink/managers/video/VideoStreamManager.java b/android/sdl_android/src/main/java/com/smartdevicelink/managers/video/VideoStreamManager.java
index d51dbd094..9874c0d7c 100644
--- a/android/sdl_android/src/main/java/com/smartdevicelink/managers/video/VideoStreamManager.java
+++ b/android/sdl_android/src/main/java/com/smartdevicelink/managers/video/VideoStreamManager.java
@@ -163,12 +163,15 @@ public class VideoStreamManager extends BaseVideoStreamManager {
public void onServiceEnded(SdlSession session, SessionType type) {
if (SessionType.NAV.equals(type)) {
if (remoteDisplay != null) {
- stopStreaming(withPendingRestart);
+ if (withPendingRestart && isHMIStateVideoStreamCapable(currentOnHMIStatus)) {
+ stopStreaming(withPendingRestart);
+ } else {
+ stopStreaming();
+ }
}
stateMachine.transitionToState(StreamingStateMachine.NONE);
transitionToState(SETTING_UP);
-
- if (withPendingRestart) {
+ if (withPendingRestart && isHMIStateVideoStreamCapable(currentOnHMIStatus)) {
VideoStreamManager manager = VideoStreamManager.this;
manager.internalInterface.startVideoService(manager.getLastCachedStreamingParameters(), manager.isEncrypted, withPendingRestart);
}
@@ -207,6 +210,10 @@ public class VideoStreamManager extends BaseVideoStreamManager {
if (hasStarted && (isHMIStateVideoStreamCapable(prevOnHMIStatus)) && (!isHMIStateVideoStreamCapable(currentOnHMIStatus))) {
stopVideoStream();
}
+ if (withPendingRestart && hasStarted && (!isHMIStateVideoStreamCapable(prevOnHMIStatus)) && (isHMIStateVideoStreamCapable(currentOnHMIStatus))) {
+ VideoStreamManager manager = VideoStreamManager.this;
+ manager.internalInterface.startVideoService(manager.getLastCachedStreamingParameters(), manager.isEncrypted, withPendingRestart);
+ }
}
}
};