summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorJoel Fischer <joeljfischer@gmail.com>2016-05-19 16:48:12 -0400
committerJoel Fischer <joeljfischer@gmail.com>2016-05-19 16:48:12 -0400
commitc444bce2c2c39d504567b18c713d244f4a2b8dc5 (patch)
tree5cb09be16d16d4b0b5f0ba3118df0c0699419e53 /README.md
parentc328bfb45d2db3e0836dbd720e1b3c170a7d4d48 (diff)
parentf7540a02262832e34c67b0953dd8a1804a046fea (diff)
downloadsdl_ios-c444bce2c2c39d504567b18c713d244f4a2b8dc5.tar.gz
Merge branch 'master' into develop
Diffstat (limited to 'README.md')
-rw-r--r--README.md116
1 files changed, 58 insertions, 58 deletions
diff --git a/README.md b/README.md
index 9f12d58e3..2416cb9c5 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)
+ [![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)
[![Version](https://img.shields.io/cocoapods/v/SmartDeviceLink-iOS.svg?style=flat)](https://cocoapods.org/pods/SmartDeviceLink-iOS)
[![License](https://img.shields.io/cocoapods/l/SmartDeviceLink-iOS.svg?style=flat)](https://cocoapods.org/pods/SmartDeviceLink-iOS)
[![Build Status](https://img.shields.io/travis/smartdevicelink/sdl_ios/master.svg?style=flat)](https://travis-ci.org/smartdevicelink/sdl_ios)
@@ -10,9 +10,9 @@
SmartDeviceLink (SDL) is a standard set of protocols and messages that connect applications on a smartphone to a vehicle head unit. This messaging enables a consumer to interact with their application using common in-vehicle interfaces such as a touch screen display, embedded voice recognition, steering wheel controls and various vehicle knobs and buttons. There are three main components that make up the SDL ecosystem.
- * The [Core](https://github.com/smartdevicelink/sdl_core) component is the software which Vehicle Manufacturers (OEMs) implement in their vehicle head units. Integrating this component into their head unit and HMI based on a set of guidelines and templates enables access to various smartphone applications.
- * The optional [SDL Server](https://github.com/smartdevicelink/sdl_server) can be used by Vehicle OEMs to update application policies and gather usage information for connected applications.
- * The [iOS](https://github.com/smartdevicelink/sdl_ios) and [Android](https://github.com/smartdevicelink/sdl_android) libraries are implemented by app developers into their applications to enable command and control via the connected head unit.
+* The [Core](https://github.com/smartdevicelink/sdl_core) component is the software which Vehicle Manufacturers (OEMs) implement in their vehicle head units. Integrating this component into their head unit and HMI based on a set of guidelines and templates enables access to various smartphone applications.
+* The optional [SDL Server](https://github.com/smartdevicelink/sdl_server) can be used by Vehicle OEMs to update application policies and gather usage information for connected applications.
+* The [iOS](https://github.com/smartdevicelink/sdl_ios) and [Android](https://github.com/smartdevicelink/sdl_android) libraries are implemented by app developers into their applications to enable command and control via the connected head unit.
<a href="http://www.youtube.com/watch?feature=player_embedded&v=AzdQdSCS24M" target="_blank"><img src="http://i.imgur.com/nm8UujD.png?1" alt="SmartDeviceLink" border="10" /></a>
@@ -34,7 +34,7 @@ See the [changelog](https://github.com/smartdevicelink/sdl_ios/blob/master/CHANG
You can install this library using [Cocoapods](https://cocoapods.org/pods/SmartDeviceLink-iOS). You can get started with Cocoapods by [following their install guide](https://guides.cocoapods.org/using/getting-started.html#getting-started), and learn how to use Cocoapods to install dependencies [by following this guide](https://guides.cocoapods.org/using/using-cocoapods.html).
-In your podfile, you want to add `pod 'SmartDeviceLink-iOS', '4.1.0'`. Then run `pod install` inside your terminal. With Cocoapods, we support iOS 6+.
+In your podfile, you want to add `pod 'SmartDeviceLink-iOS', '4.1.2'`. Then run `pod install` inside your terminal. With Cocoapods, we support iOS 6+.
##### Carthage
@@ -42,7 +42,7 @@ SDL iOS supports Carthage! Install using Carthage by following [this guide](http
##### Dynamic Framework
-Tagged to our releases is a dynamic framework file that can be drag-and-dropped into the application. Dynamic frameworks are supported on iOS 8+.
+Tagged to our releases is a dynamic framework file that can be drag-and-dropped into the application. Dynamic frameworks are supported on iOS 8+. **WARNING: You cannot submit your app to the app store with the framework as is. You MUST strip the simulator part of the framework first. Use a script such as Carthage's to accomplish this**.
### Reference Documentation
@@ -85,39 +85,39 @@ Your application must support a set of smartdevicelink protocol strings in order
```xml
<key>UISupportedExternalAccessoryProtocols</key>
- <array>
- <string>com.smartdevicelink.prot29</string>
- <string>com.smartdevicelink.prot28</string>
- <string>com.smartdevicelink.prot27</string>
- <string>com.smartdevicelink.prot26</string>
- <string>com.smartdevicelink.prot25</string>
- <string>com.smartdevicelink.prot24</string>
- <string>com.smartdevicelink.prot23</string>
- <string>com.smartdevicelink.prot22</string>
- <string>com.smartdevicelink.prot21</string>
- <string>com.smartdevicelink.prot20</string>
- <string>com.smartdevicelink.prot19</string>
- <string>com.smartdevicelink.prot18</string>
- <string>com.smartdevicelink.prot17</string>
- <string>com.smartdevicelink.prot16</string>
- <string>com.smartdevicelink.prot15</string>
- <string>com.smartdevicelink.prot14</string>
- <string>com.smartdevicelink.prot13</string>
- <string>com.smartdevicelink.prot12</string>
- <string>com.smartdevicelink.prot11</string>
- <string>com.smartdevicelink.prot10</string>
- <string>com.smartdevicelink.prot9</string>
- <string>com.smartdevicelink.prot8</string>
- <string>com.smartdevicelink.prot7</string>
- <string>com.smartdevicelink.prot6</string>
- <string>com.smartdevicelink.prot5</string>
- <string>com.smartdevicelink.prot4</string>
- <string>com.smartdevicelink.prot3</string>
- <string>com.smartdevicelink.prot2</string>
- <string>com.smartdevicelink.prot1</string>
- <string>com.smartdevicelink.prot0</string>
- <string>com.ford.sync.prot0</string>
- </array>
+<array>
+<string>com.smartdevicelink.prot29</string>
+<string>com.smartdevicelink.prot28</string>
+<string>com.smartdevicelink.prot27</string>
+<string>com.smartdevicelink.prot26</string>
+<string>com.smartdevicelink.prot25</string>
+<string>com.smartdevicelink.prot24</string>
+<string>com.smartdevicelink.prot23</string>
+<string>com.smartdevicelink.prot22</string>
+<string>com.smartdevicelink.prot21</string>
+<string>com.smartdevicelink.prot20</string>
+<string>com.smartdevicelink.prot19</string>
+<string>com.smartdevicelink.prot18</string>
+<string>com.smartdevicelink.prot17</string>
+<string>com.smartdevicelink.prot16</string>
+<string>com.smartdevicelink.prot15</string>
+<string>com.smartdevicelink.prot14</string>
+<string>com.smartdevicelink.prot13</string>
+<string>com.smartdevicelink.prot12</string>
+<string>com.smartdevicelink.prot11</string>
+<string>com.smartdevicelink.prot10</string>
+<string>com.smartdevicelink.prot9</string>
+<string>com.smartdevicelink.prot8</string>
+<string>com.smartdevicelink.prot7</string>
+<string>com.smartdevicelink.prot6</string>
+<string>com.smartdevicelink.prot5</string>
+<string>com.smartdevicelink.prot4</string>
+<string>com.smartdevicelink.prot3</string>
+<string>com.smartdevicelink.prot2</string>
+<string>com.smartdevicelink.prot1</string>
+<string>com.smartdevicelink.prot0</string>
+<string>com.ford.sync.prot0</string>
+</array>
```
#### Creating the SDLProxy
@@ -129,13 +129,13 @@ The example app's `startProxyWithTransportType` handles starting up the proxy wh
```objc
switch (transportType) {
- case ProxyTransportTypeTCP: {
- self.proxy = [SDLProxyFactory buildSDLProxyWithListener:self tcpIPAddress:@"192.168.1.1" tcpPort:@"1234"];
- } break;
- case ProxyTransportTypeIAP: {
- self.proxy = [SDLProxyFactory buildSDLProxyWithListener:self];
- } break;
- default: NSAssert(NO, @"Unknown transport setup: %@", @(transportType));
+case ProxyTransportTypeTCP: {
+self.proxy = [SDLProxyFactory buildSDLProxyWithListener:self tcpIPAddress:@"192.168.1.1" tcpPort:@"1234"];
+} break;
+case ProxyTransportTypeIAP: {
+self.proxy = [SDLProxyFactory buildSDLProxyWithListener:self];
+} break;
+default: NSAssert(NO, @"Unknown transport setup: %@", @(transportType));
}
```
@@ -164,7 +164,7 @@ The `SDLProxyListener` protocol has four required methods:
```objc
self.state = ProxyStateConnected;
-
+
SDLRegisterAppInterface *registerRequest = [SDLRPCRequestFactory buildRegisterAppInterfaceWithAppName:SDLAppName languageDesired:[SDLLanguage EN_US] appID:SDLAppId];
[self.proxy sendRPC:registerRequest];
```
@@ -182,8 +182,8 @@ When the proxy is closed, you will receive a call to `onProxyClosed`. This is wh
self.state = ProxyStateStopped;
if (self.proxy != nil) {
- [self.proxy dispose];
- self.proxy = nil;
+[self.proxy dispose];
+self.proxy = nil;
}
```
@@ -194,8 +194,8 @@ You will want to track your first HMI FULL, for instance with a boolean value. T
```objc
if ((notification.hmiLevel == [SDLHMILevel FULL]) && self.isFirstHMIFull) {
- [self showInitialData];
- self.isFirstHMIFull = NO;
+[self showInitialData];
+self.isFirstHMIFull = NO;
}
```
@@ -205,13 +205,13 @@ As described in the section "Creating the SDLProxy", you need will have separate
```objc
switch (transportType) {
- case ProxyTransportTypeTCP: {
- self.proxy = [SDLProxyFactory buildSDLProxyWithListener:self tcpIPAddress:@"192.168.1.1" tcpPort:@"1234"];
- } break;
- case ProxyTransportTypeIAP: {
- self.proxy = [SDLProxyFactory buildSDLProxyWithListener:self];
- } break;
- default: NSAssert(NO, @"Unknown transport setup: %@", @(transportType));
+case ProxyTransportTypeTCP: {
+self.proxy = [SDLProxyFactory buildSDLProxyWithListener:self tcpIPAddress:@"192.168.1.1" tcpPort:@"1234"];
+} break;
+case ProxyTransportTypeIAP: {
+self.proxy = [SDLProxyFactory buildSDLProxyWithListener:self];
+} break;
+default: NSAssert(NO, @"Unknown transport setup: %@", @(transportType));
}
```