Hercules Stadium Video iOS App - Skeleton project and login

Key Information

Register
Submit
The challenge is finished.

Challenge Overview

The Hercules Stadium Video application will be a video playback app for viewing Live TV, Video On Demand, recorded programs, and live camera feeds from a sports venue.    This F2F will define a basic XCode project that we can then build from for future functionality.

Requirements

There is no existing code - this F2F will be a sample project that will be integrated back into the skeleton app in a separate F2F.  All code must be written in Swift, and we will target iOS 8+.  Please submit an information deployment guide in PDF or markdown format with your submission.

This app will target all iOS devices that run iOS 8 or above, including iPhones and iPads, and will be usable in both orientations (portait and landscape).

Overview:

For this F2F, there are two requirements:

1. A simple UI for capturing username and password

2. Login and device provisioning

Login

This sample app will contain a simple login screen.  We have an existing UI for this already, in the old MyMedia iOS app, which will be provided in the forum.  This login screen must capture a username and password.

A set of libraries will be used to authenticate the user, and they will be provided in the forum.  Documentation will be provided as well.

We will implement a login flow *and* provisioning of the device.  The device will be provisioned after login and an XSCT DRM token will be retrieved.

We already have code for the provisioning implemented in the OnCampus application, which you can request access to by providing your Gitlab username.  Look at the DRM facade in that project.  Keep in mind that all code has to be in Swift, so you will want to clean up that code (there's a lot in there that is unnecessary).  Don't just copy it over - make sure you understand the code and only bring over what's necessary.  This is our chance to start from scratch and clean this up and make it right.

Once the user logs in, we can show a simple screen with the text "Authenticating...." and a spinner while the device is provisioned.  Any errors will be shown in the normal iOS modal dialog.  Make sure the full error details are output to the command line.  A set of text that maps from the major and minor codes will be provided and should be used when showing the error.

After the device is provisioned and the XSCT token is retrieved, just change the "Authenticating" text to "Success" and output the XSCT token to the command line.

Device

Provisioning and login will not work in the simulator.  You must have a device you can test with.

Base libraries

This new project is going to rely heavily on the base libraries we have been building for integration with the client's backend servers.  Please make sure that this package is part of your submission and is included in the build.  When this new code is put into Git, I'll make sure an external link is set up.

https://gitlab.com/team-autobots/baselibraries-ios



Final Submission Guidelines

Please see above

REVIEW STYLE:

Final Review:

Community Review Board

Approval:

User Sign-Off

SHARE:

ID: 30049874