ria unleashed - developing for the tv with litl os

47
@ryancanulla | developer.litl.com Developing For The TV Companion Wednesday, November 10, 2010

Upload: ryancanulla

Post on 27-May-2015

1.504 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: RIA Unleashed - Developing for the TV with litl os

@ryancanulla | developer.litl.com

Developing For The TV Companion

Wednesday, November 10, 2010

Page 2: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What will be available to developers?

Wednesday, November 10, 2010

Page 3: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What’s available to developers?

Keyboard . Trackpad . Gestures

Wednesday, November 10, 2010

Page 4: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What’s available to developers?

Trackpad . Gestures . Accelerometer

Wednesday, November 10, 2010

Page 5: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What’s available to developers?

Gestures . Accelerometer . Microphone

Wednesday, November 10, 2010

Page 6: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What’s available to developers?

Accelerometer . Microphone . Webcam

Wednesday, November 10, 2010

Page 7: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What’s available to developers?

Microphone . Webcam . Keyboard

Wednesday, November 10, 2010

Page 8: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What do I need to build channels now?

Wednesday, November 10, 2010

Page 9: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What do I need to build channels now?

litl os SDK

Wednesday, November 10, 2010

Page 10: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What do I need to build channels now?

litl os simulator

Wednesday, November 10, 2010

Page 11: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

How can I get a more realistic experience?

Wednesday, November 10, 2010

Page 12: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

How can I get a more realistic experience?

Use your phone.

Wednesday, November 10, 2010

Page 13: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

How can I get a more realistic experience?

Connect Over WiFi

Wednesday, November 10, 2010

Page 14: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What’s the developer workflow?

Wednesday, November 10, 2010

Page 15: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What’s the developer workflow?

Start in your favorite IDE.

Wednesday, November 10, 2010

Page 16: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What’s the developer workflow?

Build your channel.

Wednesday, November 10, 2010

Page 17: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What’s the developer workflow?

Test in the simulator.

Wednesday, November 10, 2010

Page 18: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What’s the developer workflow?

Add remotes in the simulator.

Wednesday, November 10, 2010

Page 19: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What’s the developer workflow?

Use an Android or iOS device.

Wednesday, November 10, 2010

Page 20: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What’s the developer workflow?

Go to the settings tab.

Wednesday, November 10, 2010

Page 21: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What’s the developer workflow?

Enable remote app connections.

Wednesday, November 10, 2010

Page 22: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What’s the developer workflow?

Run your Android / iOS app.

Wednesday, November 10, 2010

Page 23: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What’s the developer workflow?

Test on the device.

Wednesday, November 10, 2010

Page 24: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What’s the developer workflow?

Prepare the USB stick.

Wednesday, November 10, 2010

Page 25: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What’s the developer workflow?

Plug it into the device :-)

Wednesday, November 10, 2010

Page 26: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

How “I” manage the service/view.

Wednesday, November 10, 2010

Page 27: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

How “I” manage the service/view.

LitlServiceManager()

Where “my” service lives

How I pass my service around my application

Singleton

Wednesday, November 10, 2010

Page 28: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

How “I” manage the service/view.

LitlViewManager()

Listen for events from the service manager and react accordingly

Ensures that your view change stuff is simple, clean, and tucked away nicely

I usually have a class for each view (ie. Card, Focus Channel)

Wednesday, November 10, 2010

Page 29: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What is overscan?

Wednesday, November 10, 2010

Page 30: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

What is overscan?

What is overscan?

Cropping of your content when it’s displayed on TV’s

Varies from TV to TV, but usually 5-10%

Occurs on both old & new TV sets

Wednesday, November 10, 2010

Page 31: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

How do I deal with overscan?

Wednesday, November 10, 2010

Page 32: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

How do I deal with overscan?

Liquify your layout.

Wednesday, November 10, 2010

Page 33: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

How do I deal with overscan?

Trust in the ViewBase()

All of my view objects extend ViewBase

You can now call myViewObject.setView(width, height)

Override sizeUpdated() and add in your layout logic

Wednesday, November 10, 2010

Page 34: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

How do I deal with overscan?

Wednesday, November 10, 2010

Page 35: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

How do I deal with overscan?

Wednesday, November 10, 2010

Page 36: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

Break.

Wednesday, November 10, 2010

Page 37: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

Wednesday, November 10, 2010

Page 38: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

That was flash.

Wednesday, November 10, 2010

Page 39: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

Wednesday, November 10, 2010

Page 40: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

Managing remotes and accelerometer data.

Wednesday, November 10, 2010

Page 41: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

Managing remotes and accelerometer data.

LitlRemoteManager()

Instantiate in the ServiceManager

Extends RemoteHandlerManager

Handles the connection/disconnection of remotes

Wednesday, November 10, 2010

Page 42: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

Managing remotes and accelerometer data.

LitlRemoteManager() continued...

Constructor needs a reference to the service as well as a factory class

Don’t forget to call the start() method

Override onRemoteConnected/onRemoteDisconnected

Wednesday, November 10, 2010

Page 43: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

Managing remotes and accelerometer data.

Wednesday, November 10, 2010

Page 44: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

Managing remotes and accelerometer data.

RemoteFactory()

Implements IRemoteHandlerFactory

Instantiates a Remote() factory object

This is a “set it and forget it” type of class :-)

Wednesday, November 10, 2010

Page 45: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

Managing remotes and accelerometer data.

Wednesday, November 10, 2010

Page 46: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

Managing remotes and accelerometer data.

Remote()

Extends AccelerometerEventHandler or KeypadRemoteHandler

Implements IRemoteHandler

Override protected function onAccelerometerEvent()

Can override pair() & unpair() methods

Wednesday, November 10, 2010

Page 47: RIA Unleashed - Developing for the TV with litl os

@ryancanulladeveloper.litl.com

Managing remotes and accelerometer data.

Wednesday, November 10, 2010