Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Streaming Media Manager Updates #514

Merged
merged 77 commits into from
Aug 17, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
77 commits
Select commit Hold shift + click to select a range
9515e4e
Initial rewrite for SDLStreamingMediaManager to support HMI-state, ap…
asm09fsu Dec 9, 2016
eddeaba
Merge remote-tracking branch 'origin/develop' into feature/streaming_…
asm09fsu Jan 19, 2017
2964603
Moved initialization logic to designated initializer.
asm09fsu Jan 19, 2017
a9bddb1
remove unnecessary setter
asm09fsu Jan 19, 2017
88c4828
satisfied build warning
asm09fsu Jan 19, 2017
bcfa50d
updated delegate callback selector.
asm09fsu Jan 19, 2017
ea46502
updated initializers to use designated
asm09fsu Jan 19, 2017
7d0c684
Removed unnecessary SDLStreamingMediaManager property in SDLProxy
asm09fsu Jan 19, 2017
7f06c57
Removed commented out code.
asm09fsu Jan 19, 2017
24fd67f
Added support for informing developers of if video streaming is suppo…
asm09fsu Jan 19, 2017
fc2bf37
Removed a call to start the audio/video sessions because we should ho…
asm09fsu Jan 19, 2017
543ff94
Added in boolean for audio streaming supported. Currently mirrors vid…
asm09fsu Jan 19, 2017
d93c3fb
Set should restart of video to false when attempting to start the str…
asm09fsu Jan 19, 2017
3f03759
Merge remote-tracking branch 'origin/develop' into feature/streaming_…
asm09fsu Jan 19, 2017
e78e771
Merge remote-tracking branch 'origin/develop' into feature/streaming_…
asm09fsu Jan 20, 2017
d0a8aa0
Merged origin/develop into steaming_media_manager.
asm09fsu Jan 27, 2017
58c8c94
Updated to set video stream flag to restart when entering inactive
asm09fsu Jan 27, 2017
2da1bf6
Added isVideoStreamingPaused property.
asm09fsu Jan 30, 2017
4ed7034
Updated SDLTouchManager to match proposal with touchEventHandler.
asm09fsu Jan 31, 2017
318d857
Added missing return in case of error.
asm09fsu Feb 7, 2017
5bdc2af
Merge remote-tracking branch 'origin/develop' into feature/streaming_…
asm09fsu Feb 7, 2017
294ba95
Merge remote-tracking branch 'origin/develop' into feature/streaming_…
asm09fsu Feb 7, 2017
78ca7dd
Updated service names.
asm09fsu Feb 7, 2017
c257c2d
we should only enter the manager group if the stream manager is non-n…
asm09fsu Feb 7, 2017
03fe50a
Merge remote-tracking branch 'origin/develop' into feature/streaming_…
asm09fsu Feb 7, 2017
bc8214b
Fixed issue with error never returning.
asm09fsu Feb 8, 2017
2772e9b
Added video encoder tests
asm09fsu Feb 8, 2017
95d2fc9
Updated default video encoder settings to be a class function.
asm09fsu Feb 16, 2017
2737144
Removed unnecessary nonnull property attributes
asm09fsu Feb 16, 2017
319b48b
Added support for setting the video encoder settings in the lifecycle…
asm09fsu Feb 16, 2017
f065e86
Removed comment
asm09fsu Feb 16, 2017
d432bf5
Fixed video encoder tests.
asm09fsu Feb 16, 2017
92be461
Updated SDLLifecycleConfigurationSpec to include streaming property s…
asm09fsu Feb 16, 2017
cd3dab2
no message
asm09fsu Feb 16, 2017
e59b415
Merge remote-tracking branch 'origin/develop' into feature/streaming_…
asm09fsu Feb 16, 2017
4af4089
Updated SDLLifecycleManager tests to include checking for SDLStreamin…
asm09fsu Feb 16, 2017
93b94fc
Reorganized Streaming Media Manager to use an internal lifecycle mana…
asm09fsu Feb 17, 2017
e27f093
Fixed issue with tests not succeeding.
asm09fsu Feb 20, 2017
7660bf2
Fixed issue with adding the incorrect protocol listener.
asm09fsu Feb 20, 2017
a08af3f
Cleanup of the unit tests and added a few more testing hmi level and …
asm09fsu Feb 20, 2017
f82ec63
Merge remote-tracking branch 'origin/develop' into feature/streaming_…
asm09fsu Feb 28, 2017
6a2790b
Added nullability declarations for video encoder callback
asm09fsu Feb 28, 2017
00ee8e1
Removed iOS 8.0 check as min version is now 8.0.
asm09fsu Feb 28, 2017
9e874c2
Removed encoder error case for invalid operating system as min is now…
asm09fsu Feb 28, 2017
707489a
Merge remote-tracking branch 'origin/develop' into feature/streaming_…
asm09fsu Mar 8, 2017
36139eb
Merge remote-tracking branch 'origin/develop' into feature/streaming_…
asm09fsu Mar 14, 2017
4f6615f
Added missing import.
asm09fsu Mar 15, 2017
12ea23b
Added missing import for global header.
asm09fsu Mar 15, 2017
b942a12
Added missing file from podspec
asm09fsu Mar 15, 2017
8b2dc21
Adding in support for a customizable screen that is presented when th…
asm09fsu Mar 16, 2017
6b81058
Merge branch 'develop' into feature/streaming_media_manager
joeljfischer Apr 5, 2017
e6c4c05
Merge branch 'develop' into feature/streaming_media_manager
joeljfischer Apr 28, 2017
17c0e6a
Merge branch 'release/5.0.0' into feature/streaming_media_manager
joeljfischer Aug 1, 2017
4c8bc1a
A number of minor changes and updates to video stream manager
joeljfischer Aug 1, 2017
bbafdb5
In progress updates to how configurations are set for streaming media
joeljfischer Aug 2, 2017
654f2e9
Fix a number of complier errors caused by creating a StreamingMediaCo…
joeljfischer Aug 3, 2017
bf1e00b
Merge branch 'release/5.0.0' into feature/streaming_media_manager
joeljfischer Aug 3, 2017
678a43a
Added and deleted files from SDL.podspec
NicoleYarroch Aug 10, 2017
4db4194
Added missing comma
NicoleYarroch Aug 10, 2017
ff42915
Updated SmartDeviceLink-iOS.podspec
NicoleYarroch Aug 14, 2017
3d979e6
synced .podspec files with SmartDeviceLink class
NicoleYarroch Aug 14, 2017
6f63dee
Added SDLMacros.h file to podspec files
NicoleYarroch Aug 14, 2017
0f6f19c
Added missing files to SmartDeviceLink.h
NicoleYarroch Aug 14, 2017
c2238d0
Sorted public header files in .podspec files
NicoleYarroch Aug 14, 2017
532b89d
Merge pull request #687 from smartdevicelink/bug/streaming_media_mana…
joeljfischer Aug 14, 2017
7496054
Fix crash on going into the background while streaming
joeljfischer Aug 14, 2017
a7dbe74
Fix minor error
joeljfischer Aug 14, 2017
20eead8
Remove unused SMM property
joeljfischer Aug 15, 2017
93bf253
Add StreamingMediaConfiguration tests
joeljfischer Aug 15, 2017
963d47d
Merge branch 'release/5.0.0' into feature/streaming_media_manager
joeljfischer Aug 16, 2017
23611e2
Fix stream manager not running for PROJECTION app type
joeljfischer Aug 16, 2017
7acef6d
Simplify streaming manager app state
joeljfischer Aug 16, 2017
d178027
Attempting fix to podspec
joeljfischer Aug 16, 2017
24e7273
Fix SmartDeviceLink.podspec
joeljfischer Aug 16, 2017
1f44400
Revert "Fix SmartDeviceLink.podspec"
joeljfischer Aug 17, 2017
8bba8d8
Revert "Attempting fix to podspec"
joeljfischer Aug 17, 2017
65c1966
Merge branch 'release/5.0.0' into feature/streaming_media_manager
joeljfischer Aug 17, 2017
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# 5.0.0 Release Notes (in-progress)
### Breaking Changes
* `SDLProxy streamingMediaManager` is now removed. If you wish to use a streaming media manager, you must use the `streamingMediaManager` on `SDLManager`.

# 4.6.1 Release Notes
### Bug Fixes
* Fixes a bug where an app would crash if connected while the app is foregrounded and the vehicle is already in motion.
Expand Down
415 changes: 208 additions & 207 deletions SmartDeviceLink-iOS.podspec

Large diffs are not rendered by default.

138 changes: 129 additions & 9 deletions SmartDeviceLink-iOS.xcodeproj/project.pbxproj

Large diffs are not rendered by default.

415 changes: 208 additions & 207 deletions SmartDeviceLink.podspec

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions SmartDeviceLink/Assets/Base.lproj/SDLLockScreen.storyboard
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="11762" systemVersion="16D32" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES" initialViewController="sao-xX-Ugl">
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="12121" systemVersion="16G29" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES" initialViewController="sao-xX-Ugl">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<dependencies>
<deployment version="1808" identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="11757"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="12089"/>
<capability name="Constraints to layout margins" minToolsVersion="6.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
Expand Down
23 changes: 23 additions & 0 deletions SmartDeviceLink/CVPixelBufferRef+SDLUtil.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
//
// CVPixelBufferRef+SDLUtil.h
// SmartDeviceLink-iOS
//
// Created by Muller, Alexander (A.) on 3/16/17.
// Copyright © 2017 smartdevicelink. All rights reserved.
//

#import <UIKit/UIKit.h>
#import <CoreVideo/CVPixelBuffer.h>

NS_ASSUME_NONNULL_BEGIN

/**
Take a CVPixelBuffer frame and append some text onto it, attempting to fit it to the rect. This is used for a "blank" screen when streaming navigation is pushed to the background or otherwise disabled in progress.

@param pixelBuffer The pixel buffer to draw text over
@param text The text to draw
@return Whether or not it succeeded.
*/
Boolean CVPixelBufferAddText(CVPixelBufferRef CV_NONNULL pixelBuffer, NSString *text);

NS_ASSUME_NONNULL_END
103 changes: 103 additions & 0 deletions SmartDeviceLink/CVPixelBufferRef+SDLUtil.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
//
// CVPixelBufferRef+SDLUtil.m
// SmartDeviceLink-iOS
//
// Created by Muller, Alexander (A.) on 3/16/17.
// Copyright © 2017 smartdevicelink. All rights reserved.
//

#import "CVPixelBufferRef+SDLUtil.h"

NS_ASSUME_NONNULL_BEGIN

UIFont * _Nullable sdl_findFontSizeToFitText(CGSize size, NSString *text) {
CGFloat fontSize = 100;

do {
CGSize textSize = [text boundingRectWithSize:CGSizeMake(size.width, CGFLOAT_MAX)
options:NSStringDrawingUsesLineFragmentOrigin
attributes:@{NSFontAttributeName : [UIFont boldSystemFontOfSize:fontSize]}
context:nil].size;

if (textSize.height <= size.height) {
break;
}

fontSize -= 10.0;
} while (fontSize > 0.0);

return (fontSize > 0) ? [UIFont boldSystemFontOfSize:fontSize] : nil;
}

UIImage * _Nullable sdl_createTextImage(NSString *text, CGSize size) {
UIFont *font = sdl_findFontSizeToFitText(size, text);

if (!font) {
NSLog(@"Text cannot fit inside frame");
return nil;
}

CGRect frame = CGRectMake(0, 0, size.width, size.height);
UIGraphicsBeginImageContextWithOptions(frame.size, NO, 1.0);
CGContextRef context = UIGraphicsGetCurrentContext();

CGContextSetFillColorWithColor(context, [UIColor blackColor].CGColor);
CGContextFillRect(context, frame);
CGContextSaveGState(context);

NSMutableParagraphStyle* textStyle = NSMutableParagraphStyle.defaultParagraphStyle.mutableCopy;
textStyle.alignment = NSTextAlignmentCenter;

NSDictionary* textAttributes = @{
NSFontAttributeName: font,
NSForegroundColorAttributeName: [UIColor whiteColor],
NSParagraphStyleAttributeName: textStyle
};
CGRect textFrame = [text boundingRectWithSize:size
options:NSStringDrawingUsesLineFragmentOrigin
attributes:textAttributes
context:nil];

CGRect textInset = CGRectMake(0,
(frame.size.height - CGRectGetHeight(textFrame)) / 2.0,
frame.size.width,
frame.size.height);

[text drawInRect:textInset
withAttributes:textAttributes];

CGContextRestoreGState(context);
UIImage* image = UIGraphicsGetImageFromCurrentImageContext();

return image;
}

Boolean CVPixelBufferAddText(CVPixelBufferRef CV_NONNULL pixelBuffer, NSString *text) {
size_t width = CVPixelBufferGetWidth(pixelBuffer);
size_t height = CVPixelBufferGetHeight(pixelBuffer);

UIImage *image = sdl_createTextImage(text, CGSizeMake(width, height));
if (!image) {
NSLog(@"Could not create text image.");
return false;
}

CVPixelBufferLockBaseAddress(pixelBuffer, 0);
void *data = CVPixelBufferGetBaseAddress(pixelBuffer);

CGColorSpaceRef rgbColorSpace = CGColorSpaceCreateDeviceRGB();
CGContextRef context = CGBitmapContextCreate(data, width, height,
8, CVPixelBufferGetBytesPerRow(pixelBuffer), rgbColorSpace,
kCGBitmapByteOrder32Little |
kCGImageAlphaPremultipliedFirst);
CGContextDrawImage(context, CGRectMake(0, 0, width, height), image.CGImage);
CGColorSpaceRelease(rgbColorSpace);

CGContextRelease(context);

CVPixelBufferUnlockBaseAddress(pixelBuffer, 0);

return true;
}

NS_ASSUME_NONNULL_END
2 changes: 1 addition & 1 deletion SmartDeviceLink/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
<string>4.6.1</string>
<string>5.0.0</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
Expand Down
57 changes: 42 additions & 15 deletions SmartDeviceLink/SDLConfiguration.h
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
@class SDLLifecycleConfiguration;
@class SDLLockScreenConfiguration;
@class SDLLogConfiguration;
@class SDLStreamingMediaConfiguration;

NS_ASSUME_NONNULL_BEGIN

Expand All @@ -26,19 +27,41 @@ NS_ASSUME_NONNULL_BEGIN
*/
@property (copy, nonatomic, readonly) SDLLockScreenConfiguration *lockScreenConfig;


/**
The log configuration.
*/
@property (copy, nonatomic, readonly) SDLLogConfiguration *loggingConfig;

/**
The configuration
*/
@property (copy, nonatomic, readonly) SDLStreamingMediaConfiguration *streamingMediaConfig;

/**
Create a new configuration to be passed into SDLManager with a custom lifecycle, lock screen, and a default logging configuration.

@param lifecycleConfiguration The lifecycle configuration to be used.
@return The configuration
*/
- (instancetype)initWithLifecycle:(SDLLifecycleConfiguration *)lifecycleConfiguration __deprecated_msg(("Use initWithLifecycle:lockScreen:logging: instead"));

/**
Create a new configuration to be passed into SDLManager with a custom lifecycle, lock screen, and a default logging configuration.

@param lifecycleConfiguration The lifecycle configuration to be used.
@return The configuration
*/
- (instancetype)initWithLifecycle:(SDLLifecycleConfiguration *)lifecycleConfiguration;
+ (instancetype)configurationWithLifecycle:(SDLLifecycleConfiguration *)lifecycleConfiguration __deprecated_msg(("Use configurationWithLifecycle:lockScreen:logging: instead"));

/**
* Create a new configuration to be passed into SDLManager with a custom lifecycle, lock screen, and a default logging configuration.
*
* @param lifecycleConfig The lifecycle configuration to be used.
* @param lockScreenConfig The lockscreen configuration to be used, or `enabledConfiguration` if nil.
*
* @return The configuration
*/
- (instancetype)initWithLifecycle:(SDLLifecycleConfiguration *)lifecycleConfig lockScreen:(nullable SDLLockScreenConfiguration *)lockScreenConfig __deprecated_msg(("Use initWithLifecycle:lockScreen:logging: instead"));

/**
* Create a new configuration to be passed into SDLManager with a custom lifecycle, lock screen, and a default logging configuration.
Expand All @@ -48,7 +71,7 @@ NS_ASSUME_NONNULL_BEGIN
*
* @return The configuration
*/
- (instancetype)initWithLifecycle:(SDLLifecycleConfiguration *)lifecycleConfig lockScreen:(nullable SDLLockScreenConfiguration *)lockScreenConfig;
+ (instancetype)configurationWithLifecycle:(SDLLifecycleConfiguration *)lifecycleConfig lockScreen:(nullable SDLLockScreenConfiguration *)lockScreenConfig __deprecated_msg(("Use configurationWithLifecycle:lockScreen:logging: instead"));

/**
Create a new configuration to be passed into SDLManager with a custom lifecycle, lock screen, and logging configuration.
Expand All @@ -61,32 +84,36 @@ NS_ASSUME_NONNULL_BEGIN
- (instancetype)initWithLifecycle:(SDLLifecycleConfiguration *)lifecycleConfig lockScreen:(nullable SDLLockScreenConfiguration *)lockScreenConfig logging:(nullable SDLLogConfiguration *)logConfig;

/**
Create a new configuration to be passed into SDLManager with a custom lifecycle, lock screen, and a default logging configuration.
Create a new configuration to be passed into SDLManager with a custom lifecycle, lock screen, and logging configuration.

@param lifecycleConfiguration The lifecycle configuration to be used.
@param lifecycleConfig The lifecycle configuration to be used.
@param lockScreenConfig The lockscreen configuration to be used, or `enabledConfiguration` if nil.
@param logConfig The logging configuration to be used, or `defaultConfiguration` if nil.
@return The configuration
*/
+ (instancetype)configurationWithLifecycle:(SDLLifecycleConfiguration *)lifecycleConfiguration;
+ (instancetype)configurationWithLifecycle:(SDLLifecycleConfiguration *)lifecycleConfig lockScreen:(nullable SDLLockScreenConfiguration *)lockScreenConfig logging:(nullable SDLLogConfiguration *)logConfig;

/**
* Create a new configuration to be passed into SDLManager with a custom lifecycle, lock screen, and a default logging configuration.
*
* @param lifecycleConfig The lifecycle configuration to be used.
* @param lockScreenConfig The lockscreen configuration to be used, or `enabledConfiguration` if nil.
*
* @return The configuration
Create a new configuration to be passed into SDLManager with a custom lifecycle, lock screen, logging, and streaming media configuration.

@param lifecycleConfig The lifecycle configuration to be used.
@param lockScreenConfig The lockscreen configuration to be used, or `enabledConfiguration` if nil.
@param logConfig The logging configuration to be used, or `defaultConfiguration` if nil.
@param streamingMediaConfig The streaming media configuration to be used, or nil because it is not needed.
@return The configuration
*/
+ (instancetype)configurationWithLifecycle:(SDLLifecycleConfiguration *)lifecycleConfig lockScreen:(nullable SDLLockScreenConfiguration *)lockScreenConfig;
- (instancetype)initWithLifecycle:(SDLLifecycleConfiguration *)lifecycleConfig lockScreen:(nullable SDLLockScreenConfiguration *)lockScreenConfig logging:(nullable SDLLogConfiguration *)logConfig streamingMedia:(nullable SDLStreamingMediaConfiguration *)streamingMediaConfig;

/**
Create a new configuration to be passed into SDLManager with a custom lifecycle, lock screen, and logging configuration.
Create a new configuration to be passed into SDLManager with a custom lifecycle, lock screen, logging, and streaming media configuration.

@param lifecycleConfig The lifecycle configuration to be used.
@param lockScreenConfig The lockscreen configuration to be used, or `enabledConfiguration` if nil.
@param logConfig The logging configuration to be used, or `defaultConfiguration` if nil.
@param streamingMediaConfig The streaming media configuration to be used, or nil because it is not needed.
@return The configuration
*/
+ (instancetype)configurationWithLifecycle:(SDLLifecycleConfiguration *)lifecycleConfig lockScreen:(nullable SDLLockScreenConfiguration *)lockScreenConfig logging:(nullable SDLLogConfiguration *)logConfig;
+ (instancetype)configurationWithLifecycle:(SDLLifecycleConfiguration *)lifecycleConfig lockScreen:(nullable SDLLockScreenConfiguration *)lockScreenConfig logging:(nullable SDLLogConfiguration *)logConfig streamingMedia:(nullable SDLStreamingMediaConfiguration *)streamingMediaConfig;

@end

Expand Down
24 changes: 24 additions & 0 deletions SmartDeviceLink/SDLConfiguration.m
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
#import "SDLLifecycleConfiguration.h"
#import "SDLLockScreenConfiguration.h"
#import "SDLLogConfiguration.h"
#import "SDLStreamingMediaConfiguration.h"

NS_ASSUME_NONNULL_BEGIN

Expand Down Expand Up @@ -49,6 +50,29 @@ + (instancetype)configurationWithLifecycle:(SDLLifecycleConfiguration *)lifecycl
return [[self alloc] initWithLifecycle:lifecycleConfig lockScreen:lockScreenConfig logging:logConfig];
}

- (instancetype)initWithLifecycle:(SDLLifecycleConfiguration *)lifecycleConfig lockScreen:(nullable SDLLockScreenConfiguration *)lockScreenConfig logging:(nullable SDLLogConfiguration *)logConfig streamingMedia:(nullable SDLStreamingMediaConfiguration *)streamingMediaConfig {
self = [super init];
if (!self) {
return nil;
}

_lifecycleConfig = lifecycleConfig;
_lockScreenConfig = lockScreenConfig ?: [SDLLockScreenConfiguration enabledConfiguration];
_loggingConfig = logConfig ?: [SDLLogConfiguration defaultConfiguration];

if (_streamingMediaConfig != nil) {
NSAssert(!([_lifecycleConfig.appType isEqualToEnum:SDLAppHMITypeNavigation] || [_lifecycleConfig.appType isEqualToEnum:SDLAppHMITypeProjection]), @"You should only set a streaming media configuration if your app is a NAVIGATION or PROJECTION HMI type");
_streamingMediaConfig = streamingMediaConfig;
} else {
NSAssert(([_lifecycleConfig.appType isEqualToEnum:SDLAppHMITypeNavigation] || [_lifecycleConfig.appType isEqualToEnum:SDLAppHMITypeProjection]), @"If your app is a NAVIGATION or PROJECTION HMI type, you must set a streaming media configuration on SDLConfiguration");
}

return self;
}

+ (instancetype)configurationWithLifecycle:(SDLLifecycleConfiguration *)lifecycleConfig lockScreen:(nullable SDLLockScreenConfiguration *)lockScreenConfig logging:(nullable SDLLogConfiguration *)logConfig streamingMedia:(nullable SDLStreamingMediaConfiguration *)streamingMediaConfig {
return [[self alloc] initWithLifecycle:lifecycleConfig lockScreen:lockScreenConfig logging:logConfig streamingMedia:streamingMediaConfig];
}

#pragma mark - NSCopying

Expand Down
9 changes: 1 addition & 8 deletions SmartDeviceLink/SDLLifecycleConfiguration.h
Original file line number Diff line number Diff line change
Expand Up @@ -6,16 +6,14 @@
// Copyright © 2015 smartdevicelink. All rights reserved.
//

#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>

#import "SDLAppHMIType.h"
#import "SDLLanguage.h"

@class SDLFile;
@class SDLTTSChunk;

@protocol SDLSecurityType;


NS_ASSUME_NONNULL_BEGIN

Expand Down Expand Up @@ -118,11 +116,6 @@ NS_ASSUME_NONNULL_BEGIN
*/
@property (copy, nonatomic, nullable) NSArray<NSString *> *voiceRecognitionCommandNames;

/**
* Set security managers which could be used. This is primarily used with video streaming applications to authenticate and perhaps encrypt traffic data.
*/
@property (copy, nonatomic, nullable) NSArray<Class<SDLSecurityType>> *securityManagers;

@end

NS_ASSUME_NONNULL_END
1 change: 1 addition & 0 deletions SmartDeviceLink/SDLLifecycleConfiguration.m
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
#import "SDLLifecycleConfiguration.h"

#import "SDLFile.h"
#import "SDLVideoEncoder.h"

static NSString *const DefaultTCPIPAddress = @"192.168.0.1";
static UInt16 const DefaultTCPIPPort = 12345;
Expand Down
2 changes: 1 addition & 1 deletion SmartDeviceLink/SDLLifecycleManager.h
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ typedef void (^SDLManagerReadyBlock)(BOOL success, NSError *_Nullable error);

@property (strong, nonatomic) SDLFileManager *fileManager;
@property (strong, nonatomic) SDLPermissionManager *permissionManager;
@property (strong, nonatomic, readonly, nullable) SDLStreamingMediaManager *streamManager;
@property (strong, nonatomic, nullable) SDLStreamingMediaManager *streamManager;
@property (strong, nonatomic) SDLLockScreenManager *lockScreenManager;

@property (strong, nonatomic, readonly) SDLNotificationDispatcher *notificationDispatcher;
Expand Down
Loading