The tvOS and iOS client for Lush's Player app. Lush Player provides a wide range of audio and video content.
Please make sure you have checked out and pulled all submodules before running
-
Make sure that you have the correct Brightcove 'policy ids' in the app's respective platform's Info.plist:
<key>BrightcoveLivePolicyID</key> <string>live_policy_id_here</string> <key>BrightcoveOnDemandPolicyID</key> <string>on_demand_policy_id_here</string>
For the tVOS app the plist will be located at:
Lush Player/Info.plist
For iOS the plist will be located at:
Lush Player iOS/Info.plist
-
Run the app using Xcode, you can choose to either run the iOS version of tvOS version by changing the scheme in the top left part of Xcode editor.
The Xcode project includes both tvOS and iOS apps, they are separated under specific Schemes. Shared code is provided through a LushPlayerKit framework, which both apps import. The iOS client supports iPhone and iPad, in all orientations.
For the tvOS app the structure follows:
-
Lush Player/
- The root group for all app logic and assetsAppDelegate.swift
- The single point of entry for the AppHelpers/
- Helper classes for performing common and complicated tasks in the codebaseModels/
- Model classes for all LUSH API objectsControllers/
- Controllers for all API calls, and any other logic which requires controller logicViews/
- Any re-usableUIView
subclasses used in the codebaseView Controllers/
- All view controllers used in the codebaseMain.storyboard
- The storyboard for the app's UIAssets.xcassets
- All image assets for the appInfo.plist
- The app's info.plist file
-
Lush Player iOS/
- The root group for the iOS specific filesAppDelegate.swift
- The single point of entry for the App- Files are organised by screens/features rather than by MVC, i.e
Home/
,Search/
Please make sure to document all public functions, variables and classes fully and comment code where it is necessary. We are using the standard swift Markdown documentation style for documenting the code, which can be partially auto-generated using the keyboard shortcut cmd+\
when the cursor is on a function name or variable name.