Programming Advanced Nokia Features with Flash Lite
-
Upload
scott-janousek -
Category
Technology
-
view
112 -
download
0
description
Transcript of Programming Advanced Nokia Features with Flash Lite
Programming Advanced Nokia Features with Flash Lite
October 10, 2008
Scott Janousek
© 2008 Nokia Company Confidential
Agenda
• Intro• S60 and Flash Lite Overview (Quick)• Extending Flash Lite on S60 3rd Edition• Walkthrough/Demo• S60 Platform Services• Summary• Q&A
Slide 2
© 2008 Nokia Company Confidential
Goal
Slide 3
Learn ways to tap advanced Nokia Features from Flash Lite on the Nokia S60 Platform.
At the end of this session, you will …
© 2008 Nokia Company Confidential
INTROStuff about me …
Slide 4
© 2008 Nokia Company Confidential
About Scott Janousek
• Professional• Founder/Technical Director, Hooken Mobile• Creating Flash Experiences (games, UI’s, applications, etc) on “Non-PC
devices” (i.e. mobile, embedded)
• Some of my Community Efforts• Forum Nokia Champion• Adobe Community Expert and Evangelist for Flash Mobile and Devices• Certified Flash Lite Instructor (1.1/2.x/3.x)• Co-Manager, Boston Adobe Mobile & Devices User Group• Author, Foundation Flash Apps for Mobile Devices:
www.flashmobilebook.com• Frame27 – http://frame27.blogspot.com
Slide 5
© 2008 Nokia Company Confidential
Some Recent (Community) Flash Lite Content
• Recent content outside of NDAs, etc
Slide 6
Flash Lite Casual Game Flash Lite Screen Saver Flash Lite Mobile Guide
© 2008 Nokia Company Confidential
Upcoming Flash Book!
• “Solutions to Mobile & Device Development with Flash Lite”• AdvancED Book: Friends of Ed• Covers advanced topics:
• Flash Lite 2.x, 3.x features• Flash Mobile Application Development• Tools & Frameworks• Popular Mobile Platforms/Flash integration• Device APIs and Flash• … and more
• Targets both existing Mobile and Flash (Lite) Developers
Slide 7
© 2008 Nokia Company Confidential
S60 AND FLASH LITE OVERVIEW (QUICK)Stuff you may, or may not, already know …
Slide 8
© 2008 Nokia Company Confidential
Nokia Series 60 Platform (Quick Recap)
• Series 60, or “S60”S60 Platform (formerly Series 60 User Interface) is a software platform for mobile phones that runs on Symbian OS. S60 is currently amongst the leading smartphone platforms in the world. It is developed primarily by Nokia and licensed by them to other manufacturers.
• Nokia 3rd Edition S60 devices support Flash Lite• S60 3rd Edition FP2, or “Feature Pack 2” is newest
Slide 9
© 2008 Nokia Company Confidential
Relevant Nokia S60 Stats
• S60 Devices Shipped = +150 Million • S60 3rd Edition devices = +80 Million• All 3rd Edition = Flash Lite support• Kuneri Lite runs under S60 3rd editionSo, +80 million = target market
Slide 10
Note: Nokia S60 statistics are from January 2008
© 2008 Nokia Company Confidential
Some of my Nokia S60 3rd Edition devices
• Nokia N95, Nokia N95 8GB, Nokia E90• Favorites for Flash Lite development on Nokia S60
Slide 11
© 2008 Nokia Company Confidential
What is Flash Lite (Quick overview)
• “An optimized Adobe Flash run-time player for mobile and other non-pc devices”
• Versions: 1.0→ 1.1→ 2.0→ 2.1→ 3.0→ 3.1• +800,000,000 devices worldwide support Flash• Nokia S40 and S60 = Flash Lite support• +90 Nokia devices support Flash Lite!• Nokia supports Flash Lite content types:
• S60 Web Browser, WRT, Standalone Apps, Wallpapers, Screensavers
Slide 12
© 2008 Nokia Company Confidential
Flash Lite Architecture (Version 3.0)
Slide 13
© 2008 Nokia Company Confidential
Flash Lite – Strengths and Weaknesses
• Strengths• Media Capabilities
• Graphics, Sound, Video, Text
• Cross Platform/Portability across devices• Extensive Toolset (i.e. Adobe CS4, Adobe Device Central)
• Weaknesses• Performance on low-end devices (given Memory & CPU)• Not immune to fragmentation issues• Low-level device integration can be perceived as limited
Slide 14
© 2008 Nokia Company Confidential
EXTENDING FLASH LITE ON S60 3RD EDITIONThe Fun Stuff …
Slide 15
© 2008 Nokia Company Confidential
S60 Platform Development
Slide 16
EXPERIENCE
ADVANCED
Size =~ Addressable Market
Flash Lite
Kuneri Lite/3rd Party
S60
JAVA
© 2008 Nokia Company Confidential
S60 Development Costs
Slide 17
Attractive
Development Cost
Size =~ Addressable Market
Flash Lite
Kuneri Lite/ 3rdParty
S60
Java
© 2008 Nokia Company Confidential
Symbian/S60 Development Realities
• Native Symbian Development Challenges• More $$$• More Time• More Product Management/Lifecycle• More Highly skilled Developers
Slide 18
… ANSWER to these problems? Flash Lite + 3rd Party Software Extender
© 2008 Nokia Company Confidential
How to “Extend” Flash Lite
• By using 3rd party products ...
• All are supported under S60 platform• All are available TODAY• We will focus on Kuneri Lite in this presentation:
• Was the 1st product to market• Plug-in architecture makes it easy to use and talk about• Minimal ActionScript = Maximum results with Kuneri Lite!
Slide 19
Janus
© 2008 Nokia Company Confidential
Extending S60 Flash Lite: Pros vs Cons
• Some Pros• Reach “outside the box” of current functionality• Tap really low-level, powerful device API capabilities• Create really cool and innovative applications• No need to learn Symbian S60 Programming , just use the products!• Saves Development Time!
• Some Cons• Platform Fragmentation (outside of S60)• More Rigid Target Areas for Deployment• Company Support reliance• Symbian Signing (for some Device APIs)• Inflexible compared to custom S60 solutions
Slide 20
© 2008 Nokia Company Confidential
Kuneri Lite – One Line Product Explanation
Slide 21
• “Rapid Application Development Toolkit for Flash Lite”
What? KuneriLite is an innovative Rapid Application Development toolkit to extend Flash Lite capabilities and create great-looking S60 applications without any Symbian knowledge.
Why?KuneriLite helps you to create great-looking S60 applications faster, easier and cheaper. KuneriLite provides a common, reusable and user friendly platform for you.
How much? KuneriLite is created with creativity, innovation and diversity in mind. If your application is non-commercial, KuneriLite is completely free for you.
For Whom?You have rocking ideas? Need to develop advanced mobile applications? Is S60 challenging and Flash Lite lacking some cool features?
© 2008 Nokia Company Confidential
Kuneri Lite Platform “Stack”
Slide 22
Flash LiteUser Interface & Logic
Kuneri LiteCommunication via Plugins
Features and Device API
© 2008 Nokia Company Confidential
Kuneri Lite Features
• Fast• Powerful• Transparent to end-user• Small Footprint• 12 Plug-ins (growing)• Easy Packaging (.sis)• Time saving Device Emulator• Ease to use Step Wizard
Slide 23
© 2008 Nokia Company Confidential
Kuneri Lite – Plug-ins• Accelerometer
Read Sensor Values
• CameraAccess the devices camera (if supported)
• ConnectSend text/binary via Bluetooth
• DTMFDTMF tone support (for checking vmail, etc)
• FilePersistent data via file system
• GPSLocation Based Services
• ProtectVery Simple SWF Security Protection
• RingtoneAnimated SWF ringtones
• RotateDetect physical rotation of device
• SystemLauncher for applications
• TimerCountdown to event
• Upload/DownloadUpload content via HTTP
Slide 24
© 2008 Nokia Company Confidential
Kuneri Lite Products
Slide 25
FREE Developer Version Professional (Non Commercial)
• 3 versions that offer same feature set• Developer → Professional → Commercial
Commercial
$99 per app package
© 2008 Nokia Company Confidential
Kuneri-ized Apps – Path to Market
Slide 26
FREE Developer Version Commercial/Professional
TESTING & DEVELOPMENT
• Path to Market
DEPLOY (TO MARKET)
Nokia S60 Device Markets
© 2008 Nokia Company Confidential
Kuneri Lite – Product Wizard Walkthrough
Slide 27
© 2008 Nokia Company Confidential
Architecture Development
Slide 28
Adobe Flash 8/CS3/CS4(Commercial)
Kuneri Lite Wizard (FREE)
Nokia S60 SDK (FREE)
Flash Lite (1.1/2.x/3.x)ActionScript
Kuneri Lite ServerSymbian C++
Kuneri Lite Plug-ins(GPS, Camera, etc)
S60 on device
Kuneri Lite Architecture/Development
.sis
Local HTTP calls
Native
Native
© 2008 Nokia Company Confidential
Kuneri Lite – Testing Work Flow
Slide 29
Testing Work FlowDevelop Flash Content
CS3/CS4
Kuneri Lite Simulator/Emulator
On-Device S60 Testing
Kuneri Lite Emulator
Demo & WalkthroughTwo Simple examples using Kuneri Lite Plug-ins
KISS 60 ScreenSaver Catalog “Gravity” – Accelerometer Example
© 2008 Nokia Company Confidential
Polling Methods for Kuneri Lite
Flash Lite 1.1•Off Stage MovieClip
Flash Lite 2.x/3.x•setInterval()
Slide 31
pID_num = setInterval( poll, 500 );
function poll():Void {//-- keep pinging KL plugin....
}
//-- cleanupclearInterval( pID_num );
© 2008 Nokia Company ConfidentialSlide 32
this.createEmptyMovieClip( “kl_mc”, this.getNextHighestDepth() );loadVariables( "http://127.0.0.1:1001/Basic/accelerometer?klCommand=startsensor", kl_mc );
Kuneri Lite Communication via ActionScript
• Flash Lite 1.1• “Flash 4 syntax” - Create and off stage movieclip and
target it with ActionScript
• Flash Lite 2.x/3.x• ActionScript 2.0 and “polling”
loadVariables( "http://127.0.0.1:1001/Basic/accelerometer?klCommand=startsensor", kl_mc );
© 2008 Nokia Company Confidential
S60 PLATFORM SERVICESWhat’s new and upcoming with Flash Lite on Nokia devices?
Slide 33
© 2008 Nokia Company ConfidentialSlide 34
Programming Nokia S60 System Features
• Features / APIs not accessible (by default) in Flash Lite• Camera• Messaging• Landmarks• Location• Contacts• Calendar• Logging• Application Manager• System Info• Sensors• Etc.
© 2008 Nokia Company ConfidentialSlide 35
S60 Platform Services
• Language and runtime neutral interface to platform service APIs• Available with S60 5th Edition devices• No plans for S60 3rd Edition Feature Pack 1• Maybe S60 3rd Edition Feature Pack 2
© 2008 Nokia Company ConfidentialSlide 36
S60 Platform Services API Support
• The first release of S60 Platform Services for Flash Lite supports these APIs
• ApplicationManager• Calendar• Contacts• Landmarks• Location• Logging• MediaManagement• Messaging• Sensor• SysInfo
© 2008 Nokia Company ConfidentialSlide 38
Code Sample – Location API
import com.nokia.lib.*;
var locationUpdateParams = new Object();var locationUpdateCallback = new Object();
//Create the location service provider (generic binding)var locationService = new Service("Service.Location", "ILocation");
locationService.Trace(locationUpdateParams,locationUpdateCallback);
locationUpdateCallback.onLoad = function(transactionID:String,eventID:String,locUpdateOutput){
var locationOutput = locUpdateOutput.ReturnValue;var lat = locationOutput.Latitude;var lon = locationOutput.Longitude;
};
© 2008 Nokia Company Confidential
SUMMARYAll (good) things must come to an end …
Slide 39
© 2008 Nokia Company Confidential
Summary• Flash Lite is very good at what it does ...• Use 3rd Party Extenders for S60 apps under 3rd Edition• Consider S60 Platforms for newer S60 5TH Edition
Slide 40
© 2008 Nokia Company Confidential
Call for Action
Slide 41
Build more POWERFUL Flash Lite content –
visit:
www.kunerilite.netwww.s60.com/life/thisiss60/s60indetail/softwareversions/5thedition
© 2008 Nokia Company Confidential
For More InformationAdobe Flash Lite
• www.adobe.com/mobile• www.adobe.com/go/4it
3rd Party Products• Kuneri Lite: www.kunerilite.com• Janus: www.janus-flash.com• Flyer: code.google.com/p/flyer • SWF2GO: www.swf2go.com
Forum Nokia resources• Flash Lite: www.forum.nokia.com/main/resources/technologies/flash• Forum Nokia developer information: www.forum.nokia.com• S60 Platform Services:
http://www.forum.nokia.com/main/resources/technologies/technology_in_the_spotlight.html
Slide 42
© 2008 Nokia Company Confidential
Thank You!• Email Addresses:
• [email protected]• [email protected]
• URLs:• flashmobile.scottjanousek.com• www.hookenmobile.com• blogs.forum.nokia.com/blog/scott-janouseks-forum-nokia-blog
• Other• Skype: scottajanousek• Twitter: scottjanousek• Facebook: scottjanousek
Slide 43
© 2008 Nokia Company Confidential
Q&AQuestions?
Slide 44