MAX 2006  Beyond Boundaries Scott Janousek Flash/Mobile Developer Creating Flash Content for Consumer Electronics (MD201W)...
<ul><ul><li>Developing with Flash for six years </li></ul></ul><ul><ul><li>Now working for Schematic (Boston office) </li>...
<ul><li>Who is this session for: </li></ul><ul><ul><ul><li>Those interested in developing for Flash Enabled Portable Consu...
<ul><li>Device Convergence  –  it’s getting harder to distinguish between devices! </li></ul><ul><li>Flash Enabled Portabl...
<ul><ul><li>Flash Lite 1.1 </li></ul></ul><ul><ul><li>Flash Lite 2.x </li></ul></ul><ul><ul><li>Flash SDK (Flash 6,7) </li...
Flash Enabled Portable Consumer Electronics PMP’s and other Devices
<ul><li>Why use Flash? </li></ul><ul><ul><li>Speed to Market </li></ul></ul><ul><ul><li>Reusability </li></ul></ul><ul><ul...
<ul><li>Evaluate available Flash capabilities for your target devices </li></ul>Note: Capabilities subject to change as fi...
<ul><li>Flash Lite 1.1 Capabilities Benchmark application </li></ul><ul><li>Interpretation of Results </li></ul><ul><ul><u...
<ul><ul><ul><li>Processor Speed </li></ul></ul></ul><ul><ul><ul><li>Memory </li></ul></ul></ul><ul><ul><ul><li>Screen Size...
<ul><li>Personal Media Players by IRiver and Reigncom (Korean) </li></ul><ul><li>U10 was first generation. Clix is the “su...
<ul><li>Additional fscommand2’s available on IRiver devices </li></ul><ul><li>File Paths </li></ul>IRiver U10 and Clix API...
<ul><li>No “enter” key for IRiver devices  </li></ul><ul><li>U10 and Clix use Direct-Click UI </li></ul><ul><li>Directiona...
<ul><li>Alien Invasion </li></ul><ul><li>IRiver Clix game </li></ul><ul><li>Development Time: 3 days </li></ul><ul><li>Fla...
<ul><li>U10 development template included in Mobile Device Update #4  </li></ul><ul><li>Translated U10 Flash Lite Authorin...
<ul><li>Personal Media Player by IRiver and Reigncom (Korean) </li></ul><ul><ul><ul><li>The Korean equivalent of a iPod Na...
IRiver E10 Design and UI Walkthroughs <ul><li>MAX 2006 Btamin </li></ul><ul><li>Korean service distributes these mini apps...
<ul><li>Unofficial IRiver E10 MDP (Mobile Device Profile) </li></ul><ul><li>Adobe Devnet White paper: Optimizing Content f...
<ul><li>Personal Media Player by Yukyung Technologies (Korean) </li></ul><ul><ul><ul><li>viliv p2 will ship in South Korea...
<ul><li>fscommand2( “Quit” ); is not supported </li></ul><ul><li>Custom fscommand2’s (MMI) Examples: </li></ul>viliv p1 AP...
viliv p1 Device Keys //-- keys for the viliv p1 (Enter,U,D,L,R and “diagonals”) on( keyPress “<LEFT>” ) { /* LEFT on the t...
viliv p1 Walkthroughs <ul><li>Fish Tank  </li></ul><ul><li>Navigation Sample </li></ul><ul><li>Flash Lite 1.1 </li></ul><u...
viliv p1 Tips, Tricks, and Resources <ul><li>Unofficial viliv p1 MDP (Mobile Device Profile) </li></ul><ul><li>Flash Lite ...
<ul><li>Portable Game Console </li></ul><ul><li>Flash Implementation in Firmware Update 2.7+ </li></ul><ul><ul><ul><li>Fla...
PSP Flash 6 Features Not  Supported <ul><li>Clipboard - Text copy, cut and paste features are not supported. </li></ul><ul...
<ul><li>Mouse like functionality with analog stick and Enter key </li></ul><ul><li>Drag and Drop is supported </li></ul><u...
<ul><li>Flash not preinstalled. Installed with update 2.7+ … users must enable it! </li></ul><ul><li>Flash Satay (embedded...
PSP Walkthrough and Demo <ul><li>“ Space Paddle”  </li></ul><ul><li>Flash 6 for PSP </li></ul><ul><li>Development Time: 1 ...
<ul><li>Remember that file:/ is used to target assets,  not  file:// </li></ul><ul><ul><li>loadMovieNum( “file:/F/test.swf...
<ul><li>CDK’s are not available (yet) for:  </li></ul><ul><ul><ul><li>IRiver (U10, E10, Clix) </li></ul></ul></ul><ul><ul>...
<ul><li>No support for.sis (Symbian installer files) </li></ul><ul><li>Deploy content as Standalone .swf’s or compressed (...
<ul><li>Current Trends  </li></ul><ul><ul><ul><li>Flash (Lite) User Interfaces </li></ul></ul></ul><ul><ul><ul><li>Games <...
Summary <ul><li>We covered the U10, E10, Clix, viliv p1, and PSP </li></ul><ul><li>Walked through a few examples of demo c...
<ul><li>Adobe Mobile and Devices </li></ul><ul><li>http://www.adobe.com/mobile/ </li></ul><ul><li>Mobile and Devices Forum...
<ul><li>Thanks for attending! </li></ul><ul><li>Feedback Survey  </li></ul><ul><li>Check out the other Mobile sessions </l...
Adobe MAX 2006 - Creating Flash Content for Consumer Electronics
Upcoming SlideShare
Loading in …5
×

Adobe MAX 2006 - Creating Flash Content for Consumer Electronics

2,910 views
2,866 views

Published on

Published in: Technology, Travel
1 Comment
1 Like
Statistics
Notes
  • Excellent! Presentation about your slides on adobe max 2006.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total views
2,910
On SlideShare
0
From Embeds
0
Number of Embeds
33
Actions
Shares
0
Downloads
35
Comments
1
Likes
1
Embeds 0
No embeds

No notes for slide

Adobe MAX 2006 - Creating Flash Content for Consumer Electronics

  1. 1. MAX 2006 Beyond Boundaries Scott Janousek Flash/Mobile Developer Creating Flash Content for Consumer Electronics (MD201W) October 23-26, 2006 Please turn all devices to Silent Mode.
  2. 2. <ul><ul><li>Developing with Flash for six years </li></ul></ul><ul><ul><li>Now working for Schematic (Boston office) </li></ul></ul><ul><ul><li>Began Flash Lite in 2004 </li></ul></ul><ul><ul><li>Now working with Flash Lite 1.1, 2.x </li></ul></ul><ul><ul><li>Coauthor on a Flash Mobile book </li></ul></ul><ul><ul><li>Certified Flash Lite 1.1 Instructor </li></ul></ul>About Me SCOTT JANOUSEK Flash/Mobile Developer My Blog: http://www.scottjanousek.com/blog/ Resources: http://www.scottjanousek.com/max/
  3. 3. <ul><li>Who is this session for: </li></ul><ul><ul><ul><li>Those interested in developing for Flash Enabled Portable Consumer Electronics </li></ul></ul></ul><ul><li>Session Agenda </li></ul><ul><ul><ul><li>The Flash Platform and Device Capabilities Overview </li></ul></ul></ul><ul><ul><ul><li>Creating Content for Portable Devices: U10, Clix, E10, viliv p1, and PSP </li></ul></ul></ul><ul><ul><ul><li>Testing Content </li></ul></ul></ul><ul><ul><ul><li>Deploying Content </li></ul></ul></ul><ul><ul><ul><li>The Future of Flash Mobile on Consumer Electronics </li></ul></ul></ul><ul><ul><ul><li>Q & A </li></ul></ul></ul><ul><li>Session Goals </li></ul><ul><ul><ul><li>Gain exposure to Flash Enabled Portable Consumer Electronics </li></ul></ul></ul><ul><ul><ul><li>Learn how to start creating content for these devices using Flash </li></ul></ul></ul><ul><ul><ul><li>Understand some of the development challenges you will face </li></ul></ul></ul>Session Overview
  4. 4. <ul><li>Device Convergence – it’s getting harder to distinguish between devices! </li></ul><ul><li>Flash Enabled Portable Consumer Electronic Devices </li></ul><ul><ul><li>PMP’s: IR iver U10, Clix, E10, and viliv p1 </li></ul></ul><ul><ul><li>Other Devices: PSP, Kodak Easy Share One, Leapster Leapfrog </li></ul></ul><ul><li>We will cover Flash enabled PMP’s in this session </li></ul>Portable Consumer Electronic Devices <ul><li>Handsets and PDA’s </li></ul><ul><ul><li>More Expensive </li></ul></ul><ul><ul><li>Mass Market Appeal </li></ul></ul><ul><ul><li>Application Focus </li></ul></ul><ul><ul><li>Network Connected </li></ul></ul><ul><li>PMP’s (Portable Media Players) </li></ul><ul><ul><li>(Usually) Lower Cost </li></ul></ul><ul><ul><li>Mass Market Appeal </li></ul></ul><ul><ul><li>Entertainment Focus </li></ul></ul><ul><ul><li>(Typically) No Network Connection </li></ul></ul>
  5. 5. <ul><ul><li>Flash Lite 1.1 </li></ul></ul><ul><ul><li>Flash Lite 2.x </li></ul></ul><ul><ul><li>Flash SDK (Flash 6,7) </li></ul></ul>Flash Platform - Consumer Electronic Devices <ul><ul><li>Flash Professional 8 </li></ul></ul><ul><ul><li>Flash Lite 1.1 CDK </li></ul></ul><ul><ul><li>Flash Lite 2.x CDK </li></ul></ul><ul><ul><li>Flash Lite 2.0 Update for Flash Professional 8 </li></ul></ul><ul><ul><li>Flash SDK </li></ul></ul><ul><ul><ul><li>Manufacturers license the Flash Player source code </li></ul></ul></ul><ul><ul><li>FLASH MOBILE PLAYERS </li></ul></ul>TOOLS <ul><ul><li>PRODUCTS AND SERVICES </li></ul></ul>FLASH ENABLED CONSUMER DEVICES <ul><ul><li>Non-portables </li></ul></ul><ul><ul><li>Portables </li></ul></ul><ul><ul><ul><li>Portable Media Players </li></ul></ul></ul>
  6. 6. Flash Enabled Portable Consumer Electronics PMP’s and other Devices
  7. 7. <ul><li>Why use Flash? </li></ul><ul><ul><li>Speed to Market </li></ul></ul><ul><ul><li>Reusability </li></ul></ul><ul><ul><li>Portability </li></ul></ul><ul><ul><li>Rapid Prototyping </li></ul></ul>Benefits of Flash across Consumer Devices <ul><li>Embedded Navigation </li></ul><ul><ul><li>User Interfaces </li></ul></ul><ul><li>Creating Flash Content </li></ul><ul><ul><li>Wallpapers, Screensavers, Themes </li></ul></ul><ul><ul><li>Games </li></ul></ul><ul><ul><li>Applications </li></ul></ul><ul><ul><li>Ubiquity of Flash </li></ul></ul><ul><ul><li>Compelling User Interfaces </li></ul></ul><ul><ul><li>Better User Experiences </li></ul></ul><ul><ul><li>Growing Flash Mobile Developer Community </li></ul></ul>
  8. 8. <ul><li>Evaluate available Flash capabilities for your target devices </li></ul>Note: Capabilities subject to change as firmware updates occur on devices. Device Capabilities Matrix P1 External Movies (.swf) Yes Yes Yes Yes Yes Image Loading Yes (.jpg) Yes (.jpg) Yes (.jpg) Yes (,jpg) Yes (.jpg) Sound Type event event event event event, streaming Audio Formats ADPCM, MP3 ADPCM, MP3 ADPCM, MP3 ADPCM, MP3 PCM, ADPCM, MP3 Flash Video No No No No No Local Data Access Yes (.txt) N/A N/A Yes (.txt) Yes (.txt, .xml) Remote Data Handling No No No No Yes (.txt, .xml) Persistent Data Storage Yes (custom) Only Flash Lite 1.1 Only Flash Lite 1.1 Yes (custom) Yes (Shared Objects) Network Access No No No No Yes (WiFi) Flash Player Version Flash Lite 1.1 Flash Lite 2.0 Flash Lite 2.0 Flash Lite 1.1 Flash 6 ActionScript Flash 4/5 Hybrid ActionScript 2.0 ActionScript 2.0 Flash 4/5 Hybrid ActionScript 1.0 Flash Content Types Standalone Standalone Standalone, Themes Standalone Browser (.HTML, .swf)
  9. 9. <ul><li>Flash Lite 1.1 Capabilities Benchmark application </li></ul><ul><li>Interpretation of Results </li></ul><ul><ul><ul><li>What do these results tell us? </li></ul></ul></ul><ul><ul><ul><li>How do these devices perform at various tasks? </li></ul></ul></ul><ul><ul><ul><li>What target frame rate is appropriate? </li></ul></ul></ul>Note: All results are approximate and do no reflect performance under all possible conditions. Performance Benchmarks P1 NOTE: Flash Lite Benchmarks generated by: http://www.flashmobileforum.org/capabilities/ NOTE: PSP Flash Benchmarks generated by FPS Speedometer Flash framerate incloop randomnum substring primenum switchtime vectortime bitmaptime FL 1.1 14 fps 0.00 0.29 0.00 2.05 0.00 4700 (70% IDE) 3430 (96% IDE) FL 1.1 15 fps 0.47 0.00 0.3 3.48 0.00 5300 (62% IDE) 3190 (104% IDE) FL 2.0 15 fps 0.63 0.00 0.34 4.37 0.00 4290 (77% IDE) 3240 (102% IDE) FL 2.0 15 fps 0.64 0.00 0.34 4.36 0.00 3230 (102% IDE) 3230 (102% IDE) 6 18-24 fps N/A N/A N/A N/A N/A N/A N/A
  10. 10. <ul><ul><ul><li>Processor Speed </li></ul></ul></ul><ul><ul><ul><li>Memory </li></ul></ul></ul><ul><ul><ul><li>Screen Size </li></ul></ul></ul><ul><ul><ul><li>Input and Navigation </li></ul></ul></ul><ul><ul><ul><li>Content File Size </li></ul></ul></ul>Top 5 Portable Device Limitations <ul><li>Always consider: </li></ul><ul><li>Avoid “surprises” by researching your device capabilities and/or limitations! </li></ul><ul><li>Create “Proof of Concept” (PoC) content for your target device(s) </li></ul>
  11. 11. <ul><li>Personal Media Players by IRiver and Reigncom (Korean) </li></ul><ul><li>U10 was first generation. Clix is the “successor” </li></ul><ul><li>Flash Implementation </li></ul><ul><ul><ul><li>U10: Flash Lite 1.1 </li></ul></ul></ul><ul><ul><ul><li>Clix: Flash Lite 2.0 </li></ul></ul></ul><ul><ul><ul><ul><li>Supports ActionScript 2.0 </li></ul></ul></ul></ul>IRiver u10 and Clix Development Limitations and Constraints Screen Size: 320 x 240 pixels Processor: Comparable to Low End Pentium Desktop Memory: 5120 KB Input & Navigation: 4-way (U,D,L,R) and 2 soft keys (+/- volume controls) Target FPS: 15-20 (depending on content) Network Connectivity: None Content Testing/Deployment: USB cable transfer (or use emulator)
  12. 12. <ul><li>Additional fscommand2’s available on IRiver devices </li></ul><ul><li>File Paths </li></ul>IRiver U10 and Clix API //-- set volume level status = fscommand2(“Set”, “Vol”, value); //-- set “cookie” … remember no Shared Objects on the IRiver U10 status = fscommand2(“SetPersistentData”, “myVarValue1=a&myVarValue2=b”); //-- get “cookie” … remember no Shared Objects on the IRiver U10 status = fscommand2(“GetPersistentData”, “/:MyVarValue1”); //-- get # of images status = fscommand2(“Get”, “Picture”, “Total”, “/:totalimages”); //-- get image path status = fscommand2(“Get”, “Picture”, “Path”, totalimages, “/:imagepath”); //-- file paths on the U10 loadVariables(“file://system/t.txt”); loadMovieNum(“file://Photo/t.jpg”,1); //-- file paths on the Clix, E10 loadMovieNum(“file://Flash Games/t.swf”, 1);
  13. 13. <ul><li>No “enter” key for IRiver devices </li></ul><ul><li>U10 and Clix use Direct-Click UI </li></ul><ul><li>Directional Keys: </li></ul><ul><li>Soft Keys mapped to volume controls </li></ul><ul><li>With the Clix you can take advantage of Key Listener Objects </li></ul>IRiver Device Keys //-- keys for the U10, Clix & E10 (U,D,L,R) on( keyPress “<LEFT>” ) { /* LEFT */ } on( keyPress “<RIGHT>” ) { /* RIGHT */ } on( keyPress “<UP>” ) { /* UP */ } on( keyPress “<DOWN>” ) { /* DOWN */ } //-- set softkeys in order to use them retVal = fscommand2( “setSoftKeys”, “+”, “-” ); //-- these would be attached to a “KeyCatcher” Button on( keyPress “<PAGEDOWN>” ) { /* - Volume */ } on( keyPress “<PAGEUP>” ) { /* + Volume */ } if ( Key.IsDown( Key.LEFT ) ) { /* Key object supported for Clix */ }
  14. 14. <ul><li>Alien Invasion </li></ul><ul><li>IRiver Clix game </li></ul><ul><li>Development Time: 3 days </li></ul><ul><li>Flash Lite 2.0 </li></ul><ul><li>ActionScript 2.0 </li></ul><ul><li>OOP (Object based style) </li></ul>IRiver U10 and Clix Code Walkthroughs <ul><li>Mad Bomber </li></ul><ul><li>IRiver U10 game </li></ul><ul><li>Series 60 port to U10 </li></ul><ul><li>Porting Time: 1 day </li></ul><ul><li>Flash Lite 1.1 </li></ul><ul><li>Timeline driven (Flash 4 style) </li></ul>
  15. 15. <ul><li>U10 development template included in Mobile Device Update #4 </li></ul><ul><li>Translated U10 Flash Lite Authoring Guidelines </li></ul><ul><li>Adobe Devnet: Articles on creating content for the IRiver U10 (Flash Lite 1.1) </li></ul><ul><li>Adobe White paper: Optimizing Content for Flash Lite 2.0 (Clix) </li></ul>U10 and Clix Resources
  16. 16. <ul><li>Personal Media Player by IRiver and Reigncom (Korean) </li></ul><ul><ul><ul><li>The Korean equivalent of a iPod Nano! </li></ul></ul></ul><ul><li>Flash Implementation </li></ul><ul><ul><ul><li>Flash Lite 2.0 </li></ul></ul></ul><ul><ul><ul><li>ActionScript 2.0 Support </li></ul></ul></ul><ul><ul><ul><li>Supports UI Themes and Standalone Flash Content </li></ul></ul></ul>IRiver E10 Device Limitations and Constraints Screen Size: 128 x 128 pixels Processor: Comparable to Low End Pentium Desktop Memory: 5120 KB (same as U10 and Clix) Input & Navigation: 4-way (U,D,L,R), 2 soft keys (+/- volume controls) Target FPS: 15-20 (depending on content) Network Connectivity: None Content Testing/Deployment: USB cable transfer (or use emulator)
  17. 17. IRiver E10 Design and UI Walkthroughs <ul><li>MAX 2006 Btamin </li></ul><ul><li>Korean service distributes these mini apps </li></ul><ul><li>“ Brain Vitamins” </li></ul><ul><li>Think “Relaxation tapes” </li></ul><ul><li>Ambient animation and sound </li></ul><ul><li>Utilizing Flash Lite 1.1 </li></ul><ul><li>Flash Lite Theme </li></ul><ul><li>Popular in Korea </li></ul><ul><li>Customized User Interface skins </li></ul><ul><li>Theme .fla </li></ul><ul><li>Personalize sound, graphics, etc. </li></ul><ul><li>Utilizing Flash Lite 2.0 </li></ul>
  18. 18. <ul><li>Unofficial IRiver E10 MDP (Mobile Device Profile) </li></ul><ul><li>Adobe Devnet White paper: Optimizing Content for Flash Lite 2.0 </li></ul>IRiver E10 Resources
  19. 19. <ul><li>Personal Media Player by Yukyung Technologies (Korean) </li></ul><ul><ul><ul><li>viliv p2 will ship in South Korea soon </li></ul></ul></ul><ul><li>Flash Implementation </li></ul><ul><ul><ul><li>Flash Lite 1.1 </li></ul></ul></ul><ul><ul><ul><li>Custom API to access low level device features (MMI) </li></ul></ul></ul>viliv p1 Device Limitations and Constraints Screen Size: 480 x 272 pixels (widescreen) Processor: Comparable to Low End Pentium PC Memory: Comparable to the u10 Input & Navigation: 8-way (U,D,L,R and diagonals) and Enter key Target FPS: 15-20 (depending on content) Network Connectivity: None Content Testing/Deployment: USB cable transfer (or use emulator) API: Custom fscommand2 support
  20. 20. <ul><li>fscommand2( “Quit” ); is not supported </li></ul><ul><li>Custom fscommand2’s (MMI) Examples: </li></ul>viliv p1 API //-- Use this to exit. Must have label named Event@shoot on timeline loadMovie( “main”, 0 ); //-- Some custom commands for viliv p1 (there are device specific!) fscommand2(“GetVars”, “system”, “gettime”); fscommand2(“GetVars”, “system”, “getdate”); fscommand2(“GetVars”, “setting”, “time”, “settime”, c0, c1); fscommand2(“Getvars”, “setting”, “skin”, ”getskin”,””); fscommand2(“GetVars”, “service”, “cube”, “loadpoint”, “”); fscommand2(“GetVars”, “service”, “cube”, “savepoint”, comboNo, point, “”); fscommand2(“GetVars”, “service”, “cube”, “open”, eval(“/:song&quot;), “”); fscommand2(“GetVars”, “service”, “cube”, “play”, eval(“/:song&quot;), “”); fscommand2(“GetVars”, “service”, “cube”, “pause”, eval(“/:song&quot;), “”); fscommand2(“GetVars”, “service”, “cube”, “close”, eval(“/:song&quot;), “”); fscommand2(“GetVars”, “service”, “cube”, “playtime”, eval(“/:song&quot;), “”); fscommand2(“GetVars”, “service”, “cube”, “close”, eval(“/:song&quot;), “”); fscommand2(“GetVars”, “service”, “serviceclose&quot;, “”);
  21. 21. viliv p1 Device Keys //-- keys for the viliv p1 (Enter,U,D,L,R and “diagonals”) on( keyPress “<LEFT>” ) { /* LEFT on the touch wheel */ } on( keyPress “<RIGHT>” ) { /* RIGHT on the touch wheel */ } on( keyPress “<UP>” ) { /* UP on the touch wheel */ } on( keyPress “<DOWN>” ) { /* DOWN on the touch wheel */ } on( keyPress “<ENTER>” ) { /* ENTER on the touch wheel */ } on( keyPress “1” ) { /* “North West” on the touch wheel */ } on( keyPress “3” ) { /* “North East” on the touch wheel */ } on( keyPress “7” ) { /* “South East” on the touch wheel */ } on( keyPress “9” ) { /* “South West” on the touch wheel */ } //-- softkeys are NOT supported on the viliv p1 retVal = fscommand2( “setSoftKeys”, “left”, “right” ); //-- won’t work!
  22. 22. viliv p1 Walkthroughs <ul><li>Fish Tank </li></ul><ul><li>Navigation Sample </li></ul><ul><li>Flash Lite 1.1 </li></ul><ul><li>8-way Navigation via touch wheel </li></ul><ul><li>“ KeyCatchers” utilized </li></ul><ul><li>Flash Timeline based approach </li></ul><ul><li>Fire Flies </li></ul><ul><li>Performance Testing Sample </li></ul><ul><li>Flash Lite 1.1 </li></ul><ul><li>Utilizes Moock’s FPS Speedometer </li></ul><ul><li>ActionScript based </li></ul>
  23. 23. viliv p1 Tips, Tricks, and Resources <ul><li>Unofficial viliv p1 MDP (Mobile Device Profile) </li></ul><ul><li>Flash Lite 1.1 Authoring Guidelines (Korean) </li></ul><ul><li>loadMovie( “main”, 0 ); and “@eventshoot” label to quit out of content </li></ul><ul><li>Decompile existing .swf’s to investigate API and custom capabilities </li></ul>
  24. 24. <ul><li>Portable Game Console </li></ul><ul><li>Flash Implementation in Firmware Update 2.7+ </li></ul><ul><ul><ul><li>Flash Player 6 (via custom SDK) </li></ul></ul></ul><ul><ul><ul><li>Embedded Browser Flash Player: HTML, SWF </li></ul></ul></ul><ul><ul><ul><li>ActionScript 1.0 Support </li></ul></ul></ul>PSP (Sony Playstation Portable) Device Limitations and Constraints Screen Size: 480 x 272 pixels (widescreen) Processor: Comparable to Speed of a Pentium PC Memory: Roughly 1.5 MB Available File Size: Keep file size to 1.5 MB Input and Navigation: Mouse (analog stick), Keys: 4-way (U,D,L,R), Text Input (via onscreen keyboard) Target FPS: 18-24 (depending on content) Network Connectivity: WiFi Content Testing/Deployment: USB cable transfer, memory stick
  25. 25. PSP Flash 6 Features Not Supported <ul><li>Clipboard - Text copy, cut and paste features are not supported. </li></ul><ul><li>Video - The playback of video data such as H.263, Sorenson Video or Motion JPEG is not supported. </li></ul><ul><li>Context menu - Context menu display, control or the features that are normally included in them are not supported. </li></ul><ul><li>Printing - Print out feature is not supported. </li></ul><ul><li>Live Connect - The communication feature between JavaScript and Flash Player plug-ins is not supported. </li></ul><ul><li>FCS/FMS (Flash Media Server) - A connection to FCS/FMS, or features that requires it are not supported. </li></ul><ul><li>XMLSocket - Continuous connection and communication with the server using the XMLSocket feature is not supported. </li></ul><ul><li>Mouse - Analog stick and the Enter button work as one-button mouse. Pointer movement, click and drag & drop features are supported. </li></ul><ul><li>Keyboard - The directional keys work as the up, down, left, right cursor keys of a keyboard. </li></ul><ul><li>Character Input - Supports character input in the text boxes using the on-screen keyboard. </li></ul><ul><li>Font - Supports device font. The applicable scope of the font size and style are same as the Internet Browser. </li></ul><ul><li>Sound - Supports PCM, ADPCM and MP3 audio/sound playback for the speaker and headphone. </li></ul>Supported
  26. 26. <ul><li>Mouse like functionality with analog stick and Enter key </li></ul><ul><li>Drag and Drop is supported </li></ul><ul><li>4 Way navigation is supported (Up, Down, Left, Right) </li></ul><ul><li>x Button acts as an Enter Key for buttons </li></ul><ul><li>∆ Button mapped to Full Screen toggle </li></ul><ul><li>○ Button exits the PSP WebBrowser </li></ul>PSP Device Keys and Analog Stick onMouseDown = function() { /* analog stick and ○ Button */ } onRelease = function() { /* analog stick ○ Button */ } function myOnKeyDown(){ switch ( Key.getCode() ) { /* Codes: 38 is UP, 40 is DOWN, 37 is LEFT, 39 is RIGHT */ } } var myListener_obj = new Object(); myListener.onKeyDown = myOnKeyDown; Key.addListener( myListener_obj );
  27. 27. <ul><li>Flash not preinstalled. Installed with update 2.7+ … users must enable it! </li></ul><ul><li>Flash Satay (embedded HTML tag) </li></ul><ul><ul><li><object type=&quot;application/x-shockwave-flash&quot; data=&quot;c.swf&quot; width=”480&quot; height=”272&quot;> </li></ul></ul><ul><ul><li><param name=&quot;movie&quot; value=&quot;content.swf&quot; /></object> </li></ul></ul><ul><ul><li><embed type=&quot;application/x-shockwave-flash” src=”c.swf&quot; width=”480&quot; height=”272&quot;/> </li></ul></ul><ul><li>Client Side versus Server Side detection methods </li></ul><ul><ul><ul><li>Method #1 - client-side </li></ul></ul></ul><ul><ul><ul><li>//-- JavaScript detection code </li></ul></ul></ul><ul><ul><ul><li>if ( navigator.userAgent.indexOf('PlayStation Portable') != -1 ) {/* PSP! */} </li></ul></ul></ul><ul><ul><ul><li>Method #2 - server-side </li></ul></ul></ul><ul><ul><ul><li>//-- PHP detection code UA: Mozilla/4.0 (PSP (PlayStation Portable); 2.00) </li></ul></ul></ul><ul><ul><ul><li>if (strstr($_SERVER['HTTP_USER_AGENT'], 'PlayStation Portable')) {/* PSP! */} </li></ul></ul></ul><ul><li>Sample Detection Code </li></ul>Flash Player Detection for the PSP
  28. 28. PSP Walkthrough and Demo <ul><li>“ Space Paddle” </li></ul><ul><li>Flash 6 for PSP </li></ul><ul><li>Development Time: 1 day </li></ul><ul><li>Flash Timeline driven </li></ul><ul><li>Utilizing ActionScript 2.0 </li></ul><ul><li>Uses Event Sounds </li></ul><ul><li>Can be run as standalone SWF or within HTML </li></ul><ul><li>Game uses the analog stick for game play </li></ul>
  29. 29. <ul><li>Remember that file:/ is used to target assets, not file:// </li></ul><ul><ul><li>loadMovieNum( “file:/F/test.swf”, 1 ); </li></ul></ul><ul><ul><li>Think with a Flash Lite 2 mentality (it’s not a Flash Player 6 Desktop Player!) </li></ul></ul><ul><ul><li>Some known issues: </li></ul></ul><ul><ul><ul><li>The size of the content should be within 1.5 MB </li></ul></ul></ul><ul><ul><ul><li>With external files, load completion must be confirmed </li></ul></ul></ul><ul><ul><ul><li>The device font has 5 sizes, same as the Internet Browser </li></ul></ul></ul><ul><ul><ul><li>Mouseout event may not occur in certain circumstances </li></ul></ul></ul><ul><ul><ul><li>Restrictions when deep nesting occurs with ActionScript </li></ul></ul></ul><ul><ul><ul><li>Frame rate between 18-24 fps </li></ul></ul></ul><ul><li>PSP Web Design (for developing HTML portal sites) </li></ul><ul><ul><ul><li>http://jefte.net/psp/sony-psp-web-design-primer/ </li></ul></ul></ul><ul><ul><ul><li>http://www.brothercake.com/site/resources/reference/psp/ </li></ul></ul></ul>PSP Tips, Tricks, and Resources
  30. 30. <ul><li>CDK’s are not available (yet) for: </li></ul><ul><ul><ul><li>IRiver (U10, E10, Clix) </li></ul></ul></ul><ul><ul><ul><li>PSP </li></ul></ul></ul><ul><li>Physical USB cables can be tedious for Consumer Electronic Device development </li></ul><ul><li>Unofficial Mobile Device Templates </li></ul><ul><ul><ul><li>Created and distributed by members of the Flash Mobile Developer Community </li></ul></ul></ul><ul><ul><ul><li>Not certified, nor 100% tested </li></ul></ul></ul><ul><ul><ul><li>“ Ad Hoc” (meaning temporary) </li></ul></ul></ul><ul><ul><ul><li>They save crucial development time </li></ul></ul></ul><ul><ul><li>Downloads </li></ul></ul><ul><ul><ul><li>http://www.scottjanousek.com/max/ </li></ul></ul></ul><ul><ul><ul><li>http://www.flash4mobile.de/ </li></ul></ul></ul><ul><ul><li>Always test iteratively on actual physical devices! </li></ul></ul>Testing Content
  31. 31. <ul><li>No support for.sis (Symbian installer files) </li></ul><ul><li>Deploy content as Standalone .swf’s or compressed (.zip) files </li></ul><ul><li>PSP Wi-Fi allows for Web based portals (HTTP + .html + .swf) </li></ul><ul><li>“ Viral Marketing” </li></ul><ul><li>Distribute content directly to Aggregators </li></ul><ul><ul><ul><li>Smashing Ideas </li></ul></ul></ul><ul><ul><ul><ul><li>IRiver U10, Clix </li></ul></ul></ul></ul><ul><ul><ul><li>Newgrounds </li></ul></ul></ul><ul><ul><ul><ul><li>PSP </li></ul></ul></ul></ul><ul><ul><ul><li>IRiver </li></ul></ul></ul><ul><ul><ul><ul><li>U10, Clix, E10 </li></ul></ul></ul></ul><ul><li>Pre-installing content before device shipment </li></ul><ul><ul><ul><li>Start relationship with Device Manufacturers and/or Content Providers </li></ul></ul></ul>Deploying Content
  32. 32. <ul><li>Current Trends </li></ul><ul><ul><ul><li>Flash (Lite) User Interfaces </li></ul></ul></ul><ul><ul><ul><li>Games </li></ul></ul></ul><ul><ul><ul><li>Wallpapers, Screensavers and Themes </li></ul></ul></ul><ul><ul><ul><li>Other Applications </li></ul></ul></ul><ul><li>Upcoming Flash Lite enabled Consumer Devices </li></ul><ul><li>What are some potential future trends? </li></ul>The Future of Flash on Consumer Electronics viliv p2 (Flash Lite 2.0) Chumby (Flash Lite 2.0)
  33. 33. Summary <ul><li>We covered the U10, E10, Clix, viliv p1, and PSP </li></ul><ul><li>Walked through a few examples of demo content </li></ul><ul><li>Talked about device capabilities, limitations, APIs </li></ul><ul><ul><ul><li>Remember these essentials when developing! </li></ul></ul></ul><ul><ul><ul><li>Processor Speed </li></ul></ul></ul><ul><ul><ul><li>Memory </li></ul></ul></ul><ul><ul><ul><li>Screen Size and Resolution </li></ul></ul></ul><ul><ul><ul><li>Input and Navigation </li></ul></ul></ul><ul><ul><ul><li>Content File Size </li></ul></ul></ul><ul><li>Testing and Deployment of Content </li></ul><ul><li>Discussed Current Trends and the Future of Flash on Consumer Electronics </li></ul><ul><li>Conclusion: Flash provides both a powerful platform and rich toolset for rapid content creation on Consumer Electronic Devices! </li></ul>
  34. 34. <ul><li>Adobe Mobile and Devices </li></ul><ul><li>http://www.adobe.com/mobile/ </li></ul><ul><li>Mobile and Devices Forum </li></ul><ul><li>http://www.adobe.com/cfusion/webforums </li></ul><ul><li>flashdevices.net (Bill Perry) </li></ul><ul><li>http://www.flashdevices.net/ </li></ul>Resources <ul><li>Flash Lite Groups </li></ul><ul><li>http://groups.yahoo.com/group/flashlite/ </li></ul><ul><li>Adobe MaD User Group (Boston) </li></ul><ul><li>http://www.flashmobilegroup.org/ </li></ul><ul><li>Additional Resources and URLs </li></ul><ul><li>http://www.scottjanousek.com/max/ </li></ul>
  35. 35. <ul><li>Thanks for attending! </li></ul><ul><li>Feedback Survey </li></ul><ul><li>Check out the other Mobile sessions </li></ul><ul><li>Questions? </li></ul>Q & A Scott Janousek - Flash/Mobile Developer Personal: [email_address] http://www.scottjanousek.com/max/ <ul><li>My Contact Info: </li></ul>FOR MORE INFO: http://www.flashmobilegroup.org/ (IRiver Content Creation Category!)

×