140 likes | 262 Vues
The Capuchin project revolutionizes the development of mobile applications by bridging Flash and Java, providing an architecture that enhances user interfaces while ensuring robust services. As consumer demand for rich user experiences grows, Capuchin enables improved collaboration between UI designers and developers. With an easy-to-use API, developers can create compelling UIs in Flash while leveraging Java's extensive capabilities and security. Capuchin simplifies UI creation, offers efficient tools for designers, and streamlines the development process, resulting in faster, more dynamic applications.
E N D
The ProjectCapuchin Energizing User Experience
Background - rich UIs need • Consumers are increasingly demanding richer user experiences • Personalization • Customization • Operator requirements • Usability
Flash Lite - tech overview from SEMC perspective Pros - Adobe Flash CS3 IDE – easy to learn and use, fast prototyping and emulation - Community – big and active, constantly growing - Education material – books, forums, tutorials - Flash Lite Player – optimized and configured for each platform Cons - Limited system services access - No proper security solution - Lack of distribution channels - Performance and memory consumption
JAVA ME - tech overview from SEMC perspective Pros - Wide platform access – Java Specification Requests (JSRs) - Security model – protection domains offered by MIDP - Distribution infrastructure, using Java ARchive packaging - Wide adoption of language Cons - Lack of efficient, designer oriented tools - No rich UI framework - Difficult to keep separation between presentation and service layer - Designers dependent on programmers in UI development
Capuchin – overview and high-level architecture • What is Capuchin? • a way of creating compelling UI and energizing UX • a way to improve cooperation between UI designers and programmers • a way to simplify and speed up mobile applications development • a way to design UI in Flash while JAVA provides services • an API that defines a bridge between Flash and Java +
Capuchin – overview and high-level architectureWhy name Capuchin? Tamarin Capuchin
Benefits for Flash/Java developers • For Flash developers: • Extend current limited set of APIs with the use of Java JSRs • Secure Flash applications through existing Java security mechanisms • Deploy Flash in same manner as Java games and applications • Distribute Flash content using existing Java distribution infrastructure • For Java developers: • New ways of building application UI using proved technology • Clear separation of the presentation and service layer • Efficient designer oriented tools; let designers define the UI • Quick test and prototyping
How to use Capuchin? 1. Packaging pure Flash Lite content - full Flash UI, no Java service access Flash games and apps encapsulated in a MIDlet suite (*.jar), using Java ME distribution infrastructure and security mechanisms. 2. Java MIDlet using Flash Lite for the UI layer - full Flash UI, Java services Flash Lite handles the entire presentation layer while Java ME is used as a service provider, feeding the presentation layer with necessary data. 3. Java MIDlet using Flash Lite for parts of the UI - Java UI and Flash UI, Java services In cases where it is not feasible to use Flash Lite as a full presentation layer, Flash Lite could be used for presentation of some UI components, for example menus in 3D games.
Capuchin API com.sonyericsson.capuchin.*
Hello World import com.sonyericsson.capuchin.FlashImage; import com.sonyericsson.capuchin.FlashPlayer; public class MyApplication extends MIDlet { public FlashPlayer flashPlayer = null; public FlashImage flashImage = null; public MyApplication() { InputStream in = getClass().getResourceAsStream("HelloWorld.SWF"); flashImage = FlashImage.createImage(in); flashPlayer = FlashPlayer.createFlashPlayer(flashImage); flashPlayer.setFullScreenMode(true); } protected void startApp() { Display.getDisplay(this).setCurrent(flashPlayer.getDisplayable()); } …
SWF2JAR • SWF2JAR is a tool for packaging a flash file (.swf) into a MIDlet Suite (.jar) • Enables distribution of flash games and apps through Java infrastructure
mxp – development and accessibility • Capuchin service API generator • - Eclipse plug-in • GUI for generating API files • Action Script functions as input • Test data for IDE simulation