ConnectSDK / Connect-SDK-iOS

iOS source project for Connect SDK
Apache License 2.0
177 stars 139 forks source link

Connect SDK iOS

Build Status Code Coverage CocoaPods Compatible Apache License, 2.0 Platform: iOS Twitter: @ConnectSDK

Connect SDK is an open source framework that connects your mobile apps with multiple TV platforms. Because most TV platforms support a variety of protocols, Connect SDK integrates and abstracts the discovery and connectivity between all supported protocols.

For more information, visit our website.

Dependencies

This project has the following dependencies, some of which require manual setup. If you would like to use a version of the SDK which has no manual setup, consider using the lite version of the SDK.

Including Connect SDK in your app

Using CocoaPods

  1. Add pod "ConnectSDK" to your Podfile
  2. Run pod install
  3. Open the workspace file and run your project

Important: Unfortunately, Amazon Fling SDK is not distributed via CocoaPods, so we cannot include its support in a subspec in an automated way. If you need it, please use the source ConnectSDK project directly.

You can use pod "ConnectSDK/Core" to get the lite version.

Without CocoaPods

  1. Clone the repository (git clone https://github.com/ConnectSDK/Connect-SDK-iOS.git)
  2. Set up the submodules by running the following command (in the Connect-SDK-iOS/ directory in this example): git submodule update --init
  3. Open your project in Xcode
  4. Locate the Connect SDK Xcode project in Finder
  5. Drag the Connect SDK Xcode project (ConnectSDK.xcodeproj) into your project's Xcode library
  6. Navigate to your target's settings screen, then navigate to the "Build Phases" tab
  7. Add the following in the "Link Binary With Libraries" section:
    • libConnectSDK.a
    • libz.dylib
    • libicucore.dylib
  8. Navigate to the "Build Settings" tab and add -ObjC to your target's "Other Linker Flags"
  9. Follow the setup instructions for the service submodules:

Include Strings File for Localization (optional)

  1. Locate the Connect SDK Xcode project in the Finder
  2. Drag the ConnectSDKStrings folder into your project's library
  3. You may make whatever changes you would like to the values and the SDK will use your strings file

Tests

Connect SDK has tests for some parts of the code, and we are continuing to increase the test coverage. There are currently three types of tests:

Type Target & Scheme Frameworks used Uses network Fast Reliable
Unit tests ConnectSDKTests OCMock, OHHTTPStubs, XCTest - + +
Integration tests ConnectSDKIntegrationTests Expecta, OCMock, Specta - + +
Acceptance (aka End-To-End) tests ConnectSDKAcceptanceTests Expecta, OCMock, Specta + - ±

The required third-party test frameworks are already pre-built and included in the core submodule.

All of the test targets are compiled when the main ConnectSDK scheme is built, but only the unit tests are setup to run when testing the scheme. The other tests can be run by selecting the corresponding scheme.

Limitations/Caveats

Subtitles

Contact

Credits

Connect SDK for iOS makes use of the following projects, some of which are open-source:

These projects are used in tests:

This public domain image is used in tests: The San Francisco peaks of flagstaff public domain image.

License

Copyright (c) 2013-2015 LG Electronics.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.