Apple TV App Development for tvOS | Mark Price | Skillshare

Apple TV App Development for tvOS

Mark Price, iOS & Web Developer / Instructor

Play Speed
  • 0.5x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 2x
69 Lessons (15h 46m)
    • 1. Intro to Course

      3:52
    • 2. How to Run Mac OSX on PC

      4:26
    • 3. Installing Xcode

      5:19
    • 4. Xcode Change Font Size With +/-

      2:38
    • 5. How to Get FREE Live Help

      2:36
    • 6. DO NOT SKIP THIS VIDEO

      2:36
    • 7. tvOS Alerts 

      18:02
    • 8. tvOS Buttons

      14:24
    • 9. tvOS Custom View Focus

      13:37
    • 10. tvOS Navigation

      8:00
    • 11. tvOS Tab Bars

      5:49
    • 12. tvOS Text Entry

      9:52
    • 13. tvOS Popular Movies Part 1

      11:00
    • 14. tvOS Popular Movies Part 2

      21:00
    • 15. tvOS Popular Movies Part 3

      35:26
    • 16. tvOS Popular Movies Part 4 (Image Focus)

      2:22
    • 17. tvOS Apple Design Guidelines

      11:09
    • 18. tvOS Creating an layered app icon

      25:18
    • 19. tvOS Parallax Viewer and Xcode icon

      7:55
    • 20. tvOS Photoshop Parallax Exporter Plugin

      7:55
    • 21. tvOS Top shelf image

      17:46
    • 22. tvOS Retro Skate App Icon & Shelf Image with Photoshop

      32:14
    • 23. Javascript Resources

      4:12
    • 24. Javascript Installing an IDE for Web Development

      11:58
    • 25. Javascript Installing NodeJs

      7:39
    • 26. Javascript Strings

      9:47
    • 27. Javascript Conditionals

      6:18
    • 28. Javascript Numbers

      7:43
    • 29. Javascript Loops & Arrays

      5:39
    • 30. Javascript Objects

      14:24
    • 31. NPM readline-sync

      5:29
    • 32. TVML Documentation

      5:29
    • 33. TVML TVJS Documentation

      3:47
    • 34. TVML Catalog Overview

      15:58
    • 35. TVML ListWithBanner Template

      23:52
    • 36. TVML Presenter & Resource Loader

      14:23
    • 37. TVML Convert LSR to LCR

      5:46
    • 38. TVML Project Creation & App Delegate Setup

      13:46
    • 39. TVML Amazon S3 Hosting

      4:52
    • 40. TVML Deploying to Digital Ocean

      19:28
    • 41. tvOS SpriteKit Game - Intro to Retro Skate

      2:28
    • 42. tvOS SpriteKit Game Retro Skate - Intro to Sprite Kit

      22:42
    • 43. tvOS SpriteKit Game Retro Skate - Animating Ground

      23:14
    • 44. tvOS SpriteKit Game Retro Skate - Animated Character

      14:17
    • 45. tvOS SpriteKit Game Retro Skate - Physics & Jumping

      27:25
    • 46. tvOS SpriteKit Game Retro Skate - Prepping for Collisions

      22:43
    • 47. tvOS SpriteKit Game Retro Skate - Obstacle Colliders

      28:10
    • 48. tvOS SpriteKit Game Retro Skate - Collision Detection

      21:52
    • 49. tvOS SpriteKit Game Retro Skate - Parallax Background & Sidewalk

      23:17
    • 50. tvOS SpriteKit Game Retro Skate - Randomized Buildings

      14:43
    • 51. tvOS SpriteKit Game Retro Skate - Audio & Crash Animation

      17:11
    • 52. tvOS SpriteKit Game Retro Skate - Adjusting Collisions

      9:46
    • 53. Exercise - Skate or Die

      5:06
    • 54. Paid Apple Developer Account

      4:20
    • 55. Development Certificates

      14:12
    • 56. tvOS Submitting a tvOS App to the App Store

      19:26
    • 57. Swift 2 Variables & Types

      18:40
    • 58. Swift 2 Conditionals Part 1

      11:39
    • 59. Swift 2 Conditionals Part 2

      9:21
    • 60. Swift 2 Functions

      25:53
    • 61. Swift 2 Arrays

      19:20
    • 62. Swift 2 Loops

      30:40
    • 63. Swift 2 Dictionaries

      12:51
    • 64. Swift 2 Object-Oriented Programming & Classes

      25:17
    • 65. Swift 2 Inheritance

      17:55
    • 66. Swift 2 Polymorphism

      11:42
    • 67. Swift 2 Optionals

      28:01
    • 68. Swift 2 Enums

      14:27
    • 69. Swift 2 Extensions

      5:42

Project Description

Class Projects

Project 1: Install the Xcode Plugin
(related lessons Section 1)

Take a moment and install the Xcode plugin for dynamically changing Xcode font size.

Project 2: Detail View Controller
(related lessons Section 2)

Using the existing API in the Popular Movies app - implement a detail view controller that:

  1. Shows details about the movie
  2. Has a thumbnail of the movie
  3. Pick on other data type to show
  4. You will need to build the transition and Segue between view controllers

Project 3: Create a Parallax Icon
(related lessons Section 3)

  1. Go to https://thenounproject.com/ and find some icons/images you like
  2. Using Photoshop (or your favorite image editing program) create 3-5 layers of artwork
  3. Preview your layers in the Parallax Viewer
  4. Import the images into an Apple TV Xcode project, and build and run to see how it looks
  5. Post your finished icon to http://community.devslopes.com/

Project 4: Node Calculator
(related lessons Section 4)

Using node and the NPM package readline-sync create a simple calculator.

  1. When the program runs it will show the text "Please enter a number"
  2. After the number is entered it will say, "Please enter another number"
  3. After the second number is entered show a prompt that says, "Please enter an operator (+, - , / , * )"
  4. The user will enter an operator. Once that operator is entered the result of the operation will be printed to the screen.

Project 5: Your Own TVML App
(related lessons Section 5)

You are going to build your very own TVML app using principles you have learned in this course.

  1. Using the TVML App Catalog project provided, pick a TVML template that you like
  2. Create your own background image for the template
  3. Create your own images where images are needed
  4. If your template has selectable image items, make sure you use LCR files that have a parallax effect
  5. This is a full project, so you of course will need to build an Xcode project, the web code, and have a localhost server up and running
  6. Include at least one
  7. If your template includes movies/videos, link to online videos (they will need an extension like .MOV, .MP4, etc. Youtube videos will not work)

Use these pages for reference:

Project 6: Refactor Game Scene
(related lessons Section 6)

You are going to refactor GameScene.swift. You may have noticed that we have quite a bit of code duplication. This is not good.

  1. Refactor setupBackground function to will dynamically create your background and position them where they need to be. Try and achieve 30%+ less lines of code.
  2. Refactor setupGround function to have 30%+ less code
  3. Refactor groundMovement function to have 50% less code

Think how you can create function parameters to allow you to have less code duplication. This won't be super easy!

Project 7: Skate or Die
(related lesson Section 6)

Video exercise

Project 8: Get Ready to Submit Your App
(related lessons Section 7)

Now is the time to set up your paid Apple developer account if you haven't done so already.

  1. Go to this URL and sign up and pay the fee: https://developer.apple.com/programs/
  2. If you are registering as a company, make sure your business/legal entity is setup, then apply for a duns and bradstreet number. Then follow step #1

Project 9: Variable Operations
(related lessons Section 8)

Simple Math Operations In Swift

Using Swift and an Xcode Playground you are going to perform some simple math operations.

Requirements:

  1. Create a variable with a name of your choosing that has a value of 15
  2. Create a 2nd variable with a name of your choosing that has a value of 5
  3. Create a 3rd variable that stores that sum of the 1st and 2nd variables (20 should print to the screen)
  4. Create a 4th variable that stores the result of a multiplication operation - the stored result should be equal to 45
  5. Create a 5th variable that stores the result of the 1st variable minus the 2nd variable - the result should be 10
  6. Create a 6th variable that stores the result of the 1st variable divided by the 2nd variable - the result should be 3
  7. Create 3 new variables of any name and of any value, but all on the same line
  8. Create 3 constants (let) of any name and of any value, but all on the same line
  9. Create an explicit variable of any name of type Double and don't give it any value
  10. Create another explicit variable of any name of type Int but DO give it an initial value of 423
  11. Create a variable of type String with a value of "Hello"
  12. Create another variable of type String with a value of "World"
  13. Create a 3rd variable to store the result of concatenating the first two strings (using the + symbol)
  14. Using that 3rd variable again, store the result of concatenating the first two string but instead using "\(someVar)" syntax

Project 10: Functions
(related lessons Section 8)

Requirements:

  1. Create a new Xcode Playground
  2. Create a function named add that takes two parameters of type Double and returns the sum of the two numbers
  3. Create a function named subtract that takes two parameters of type Int and returns the sum of the two numbers
  4. Create a function named multiply that takes two parameters of type Float and returns the product of the two numbers
  5. Create a function named divide that takes two parameters of type Double and returns the result of dividing the first parameter by the second
  6. Call those functions and pass different values into the parameters - ensure they are producing the correct results

Project 11: Arrays & Loops
(related lessons Section 8)

  1. Create an empty array of type Int called oddNumbers
  2. Using a standard for loop add all odd numbers less than or equal to 100 to the oddNumbers array
  3. Create a second array called sums of type Int
  4. Using a for each loop, iterate through oddNumbers array and add the current iteration value + 5 to the sums array
  5. Using a repeat while loop, iterate through the sums array and print "The sum is: x" where x is the current value of the iteration (ie The sum is: 15)

In the end, if done correctly, the sums array should print as follows:

sums.png

Student Projects