diff options
author | Joel Fischer <joeljfischer@gmail.com> | 2018-07-17 14:35:12 -0400 |
---|---|---|
committer | Joel Fischer <joeljfischer@gmail.com> | 2018-07-17 14:35:12 -0400 |
commit | fbf6fdd107ff1832c4b316544b82135b029276cd (patch) | |
tree | 1d188c9dc16a5832c3bd018006c7ad43e37b4407 | |
parent | 8752f65c9a3807d4f5506b70e1897417095529c0 (diff) | |
download | sdl_ios-feature/issue_971_vehicle_data_ElectronicParkBrakeStatus.tar.gz |
Add electronic park brake status to example appsfeature/issue_971_vehicle_data_ElectronicParkBrakeStatus
-rw-r--r-- | SmartDeviceLink_Example/MenuManager.m | 2 | ||||
-rw-r--r-- | SmartDeviceLink_Example/MenuManager.swift | 6 | ||||
-rw-r--r-- | SmartDeviceLink_Example/VehicleDataManager.swift | 6 |
3 files changed, 8 insertions, 6 deletions
diff --git a/SmartDeviceLink_Example/MenuManager.m b/SmartDeviceLink_Example/MenuManager.m index ad58d540c..a43d5c10f 100644 --- a/SmartDeviceLink_Example/MenuManager.m +++ b/SmartDeviceLink_Example/MenuManager.m @@ -59,7 +59,7 @@ NS_ASSUME_NONNULL_BEGIN } + (NSArray<NSString *> *)sdlex_allVehicleDataTypes { - return @[ACAccelerationPedalPositionMenuName, ACAirbagStatusMenuName, ACBeltStatusMenuName, ACBodyInformationMenuName, ACClusterModeStatusMenuName, ACDeviceStatusMenuName, ACDriverBrakingMenuName, ACECallInfoMenuName, ACEmergencyEventMenuName, ACEngineOilLifeMenuName, ACEngineTorqueMenuName, ACExternalTemperatureMenuName, ACFuelLevelMenuName, ACFuelLevelStateMenuName, ACFuelRangeMenuName, ACGPSMenuName, ACHeadLampStatusMenuName, ACInstantFuelConsumptionMenuName, ACMyKeyMenuName, ACOdometerMenuName, ACPRNDLMenuName, ACRPMMenuName, ACSpeedMenuName, ACSteeringWheelAngleMenuName, ACTirePressureMenuName, ACVINMenuName, ACWiperStatusMenuName]; + return @[ACAccelerationPedalPositionMenuName, ACAirbagStatusMenuName, ACBeltStatusMenuName, ACBodyInformationMenuName, ACClusterModeStatusMenuName, ACDeviceStatusMenuName, ACDriverBrakingMenuName, ACECallInfoMenuName, ACElectronicParkBrakeStatus, ACEmergencyEventMenuName, ACEngineOilLifeMenuName, ACEngineTorqueMenuName, ACExternalTemperatureMenuName, ACFuelLevelMenuName, ACFuelLevelStateMenuName, ACFuelRangeMenuName, ACGPSMenuName, ACHeadLampStatusMenuName, ACInstantFuelConsumptionMenuName, ACMyKeyMenuName, ACOdometerMenuName, ACPRNDLMenuName, ACRPMMenuName, ACSpeedMenuName, ACSteeringWheelAngleMenuName, ACTirePressureMenuName, ACVINMenuName, ACWiperStatusMenuName]; } + (SDLMenuCell *)sdlex_menuCellShowPerformInteractionWithManager:(SDLManager *)manager performManager:(PerformInteractionManager *)performManager { diff --git a/SmartDeviceLink_Example/MenuManager.swift b/SmartDeviceLink_Example/MenuManager.swift index 7122f1af9..cd7ab76bb 100644 --- a/SmartDeviceLink_Example/MenuManager.swift +++ b/SmartDeviceLink_Example/MenuManager.swift @@ -59,7 +59,7 @@ private extension MenuManager { /// - Returns: A SDLMenuCell object class func menuCellGetAllVehicleData(with manager: SDLManager) -> SDLMenuCell { let submenuItems = allVehicleDataTypes.map { submenuName in - SDLMenuCell(title: submenuName, icon: nil, voiceCommands: [submenuName], handler: { triggerSource in + SDLMenuCell(title: submenuName, icon: nil, voiceCommands: nil, handler: { triggerSource in VehicleDataManager.getAllVehicleData(with: manager, triggerSource: triggerSource, vehicleDataType: submenuName) }) } @@ -69,7 +69,7 @@ private extension MenuManager { /// A list of all possible vehicle data types static var allVehicleDataTypes: [String] { - return [ACAccelerationPedalPositionMenuName, ACAirbagStatusMenuName, ACBeltStatusMenuName, ACBodyInformationMenuName, ACClusterModeStatusMenuName, ACDeviceStatusMenuName, ACDriverBrakingMenuName, ACECallInfoMenuName, ACEmergencyEventMenuName, ACEngineOilLifeMenuName, ACEngineTorqueMenuName, ACExternalTemperatureMenuName, ACFuelLevelMenuName, ACFuelLevelStateMenuName, ACFuelRangeMenuName, ACGPSMenuName, ACHeadLampStatusMenuName, ACInstantFuelConsumptionMenuName, ACMyKeyMenuName, ACOdometerMenuName, ACPRNDLMenuName, ACRPMMenuName, ACSpeedMenuName, ACSteeringWheelAngleMenuName, ACTirePressureMenuName, ACVINMenuName, ACWiperStatusMenuName] + return [ACAccelerationPedalPositionMenuName, ACAirbagStatusMenuName, ACBeltStatusMenuName, ACBodyInformationMenuName, ACClusterModeStatusMenuName, ACDeviceStatusMenuName, ACDriverBrakingMenuName, ACECallInfoMenuName, ACElectronicParkBrakeStatus, ACEmergencyEventMenuName, ACEngineOilLifeMenuName, ACEngineTorqueMenuName, ACExternalTemperatureMenuName, ACFuelLevelMenuName, ACFuelLevelStateMenuName, ACFuelRangeMenuName, ACGPSMenuName, ACHeadLampStatusMenuName, ACInstantFuelConsumptionMenuName, ACMyKeyMenuName, ACOdometerMenuName, ACPRNDLMenuName, ACRPMMenuName, ACSpeedMenuName, ACSteeringWheelAngleMenuName, ACTirePressureMenuName, ACVINMenuName, ACWiperStatusMenuName] } /// Menu item that shows a custom menu (i.e. a Perform Interaction Choice Set) when selected @@ -122,7 +122,7 @@ private extension MenuManager { var submenuItems = [SDLMenuCell]() for i in 0 ..< 10 { let submenuTitle = "Submenu Item \(i)" - submenuItems.append(SDLMenuCell(title: submenuTitle, icon: SDLArtwork(image: UIImage(named: MenuBWIconImageName)!.withRenderingMode(.alwaysTemplate), persistent: true, as: .PNG), voiceCommands: [submenuTitle, "Item \(i)", "\(i)"], handler: { (triggerSource) in + submenuItems.append(SDLMenuCell(title: submenuTitle, icon: SDLArtwork(image: UIImage(named: MenuBWIconImageName)!.withRenderingMode(.alwaysTemplate), persistent: true, as: .PNG), voiceCommands: nil, handler: { (triggerSource) in let message = "\(submenuTitle) selected!" switch triggerSource { case .menu: diff --git a/SmartDeviceLink_Example/VehicleDataManager.swift b/SmartDeviceLink_Example/VehicleDataManager.swift index d670a5ec5..bbd4e50d5 100644 --- a/SmartDeviceLink_Example/VehicleDataManager.swift +++ b/SmartDeviceLink_Example/VehicleDataManager.swift @@ -111,7 +111,7 @@ extension VehicleDataManager { guard hasPermissionToAccessVehicleData(with: manager) else { return } SDLLog.d("App has permission to access vehicle data. Requesting all vehicle data...") - let getAllVehicleData = SDLGetVehicleData(accelerationPedalPosition: true, airbagStatus: true, beltStatus: true, bodyInformation: true, clusterModeStatus: true, deviceStatus: true, driverBraking: true, eCallInfo: true, emergencyEvent: true, engineOilLife: true, engineTorque: true, externalTemperature: true, fuelLevel: true, fuelLevelState: true, fuelRange: true, gps: true, headLampStatus: true, instantFuelConsumption: true, myKey: true, odometer: true, prndl: true, rpm: true, speed: true, steeringWheelAngle: true, tirePressure: true, vin: true, wiperStatus: true) + let getAllVehicleData = SDLGetVehicleData(accelerationPedalPosition: true, airbagStatus: true, beltStatus: true, bodyInformation: true, clusterModeStatus: true, deviceStatus: true, driverBraking: true, eCallInfo: true, electronicParkBrakeStatus: true, emergencyEvent: true, engineOilLife: true, engineTorque: true, externalTemperature: true, fuelLevel: true, fuelLevelState: true, fuelRange: true, gps: true, headLampStatus: true, instantFuelConsumption: true, myKey: true, odometer: true, prndl: true, rpm: true, speed: true, steeringWheelAngle: true, tirePressure: true, vin: true, wiperStatus: true) manager.send(request: getAllVehicleData) { (request, response, error) in guard didAccessVehicleDataSuccessfully(with: manager, response: response, error: error) else { return } @@ -125,13 +125,13 @@ extension VehicleDataManager { SDLLog.d("This app does not have the required permissions to access vehicle data") alertMessage = "Disallowed" case .success, .dataNotAvailable: - SDLLog.d("Request for vehicle data successful") if let vehicleData = response as? SDLGetVehicleDataResponse { alertMessage = vehicleDataDescription(vehicleData, vehicleDataType: vehicleDataType) } else { SDLLog.e("No vehicle data returned") alertMessage = "No vehicle data returned" } + SDLLog.d("Request for vehicle data successful, \(alertMessage)") default: break } @@ -176,6 +176,8 @@ extension VehicleDataManager { vehicleDataDescription += vehicleData.driverBraking?.rawValue.rawValue ?? notAvailable case ACECallInfoMenuName: vehicleDataDescription += vehicleData.eCallInfo?.description ?? notAvailable + case ACElectronicParkBrakeStatus: + vehicleDataDescription += vehicleData.electronicParkBrakeStatus?.rawValue.rawValue ?? notAvailable case ACEmergencyEventMenuName: vehicleDataDescription += vehicleData.emergencyEvent?.description ?? notAvailable case ACEngineOilLifeMenuName: |