summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoey Grover <joeygrover@gmail.com>2018-10-17 11:25:22 -0400
committerJoey Grover <joeygrover@gmail.com>2018-10-17 11:25:22 -0400
commit2540a3d8bbbe427be03579b24b684f4037deb423 (patch)
tree25c5af03cafa5fbd13392c9c809fa077b2038a14
parente2c3ceb5fdc622abdb7414ca7cff9b180423bae2 (diff)
downloadsdl_android-2540a3d8bbbe427be03579b24b684f4037deb423.tar.gz
Optimize null check for video stremaing caps
Also added to video streaming manager
-rw-r--r--sdl_android/src/main/java/com/smartdevicelink/managers/video/VideoStreamManager.java9
-rw-r--r--sdl_android/src/main/java/com/smartdevicelink/proxy/SdlProxyBase.java15
2 files changed, 13 insertions, 11 deletions
diff --git a/sdl_android/src/main/java/com/smartdevicelink/managers/video/VideoStreamManager.java b/sdl_android/src/main/java/com/smartdevicelink/managers/video/VideoStreamManager.java
index 792180d2b..1e84531bd 100644
--- a/sdl_android/src/main/java/com/smartdevicelink/managers/video/VideoStreamManager.java
+++ b/sdl_android/src/main/java/com/smartdevicelink/managers/video/VideoStreamManager.java
@@ -413,13 +413,18 @@ public class VideoStreamManager extends BaseSubManager {
ImageResolution resolution = null;
if(internalInterface.getProtocolVersion().getMajor() >= 5){ //At this point we should already have the capability
VideoStreamingCapability capability = (VideoStreamingCapability) internalInterface.getCapability(SystemCapabilityType.VIDEO_STREAMING);
- resolution = capability.getPreferredResolution();
- }else {
+ if(capability != null){
+ resolution = capability.getPreferredResolution();
+ }
+ }
+
+ if(resolution == null){ //Either the protocol version is too low to access video streaming caps, or they were null
DisplayCapabilities dispCap = (DisplayCapabilities) internalInterface.getCapability(SystemCapabilityType.DISPLAY);
if (dispCap != null) {
resolution = (dispCap.getScreenParams().getImageResolution());
}
}
+
if(resolution != null){
DisplayMetrics displayMetrics = new DisplayMetrics();
disp.getMetrics(displayMetrics);
diff --git a/sdl_android/src/main/java/com/smartdevicelink/proxy/SdlProxyBase.java b/sdl_android/src/main/java/com/smartdevicelink/proxy/SdlProxyBase.java
index c4ef3293c..2bdf94762 100644
--- a/sdl_android/src/main/java/com/smartdevicelink/proxy/SdlProxyBase.java
+++ b/sdl_android/src/main/java/com/smartdevicelink/proxy/SdlProxyBase.java
@@ -7495,19 +7495,16 @@ public abstract class SdlProxyBase<proxyListenerType extends IProxyListenerBase>
VideoStreamingCapability capability = (VideoStreamingCapability)_systemCapabilityManager.getCapability(SystemCapabilityType.VIDEO_STREAMING);
if (capability != null) {
resolution = capability.getPreferredResolution();
- } else {
- // Try fallback; though it may not be needed.
- DisplayCapabilities dispCap = (DisplayCapabilities) _systemCapabilityManager.getCapability(SystemCapabilityType.DISPLAY);
- if (dispCap != null) {
- resolution = (dispCap.getScreenParams().getImageResolution());
- }
}
- }else {
- DisplayCapabilities dispCap = (DisplayCapabilities) _systemCapabilityManager.getCapability(SystemCapabilityType.DISPLAY);
+ }
+
+ if(resolution == null){ //Either the protocol version is too low to access video streaming caps, or they were null
+ DisplayCapabilities dispCap = (DisplayCapabilities) internalInterface.getCapability(SystemCapabilityType.DISPLAY);
if (dispCap != null) {
- resolution = (dispCap.getScreenParams().getImageResolution());
+ resolution = (dispCap.getScreenParams().getImageResolution());
}
}
+
if(resolution != null){
DisplayMetrics displayMetrics = new DisplayMetrics();
disp.getMetrics(displayMetrics);