Tizen Framework (Tizen Ver. 2.3) Spring 2015 Soo Dong Kim, Ph.D. Professor, Department of Computer Science Software Engineering Laboratory Soongsil University Office 02-820-0909 Mobile 010-7392-2220 sdkim777@gmail.com http://soft.ssu.ac.kr 1
What is Tizen Framework? To provide APIs for developing Tizen applications To manage life cycle of Tizen applications To handle system events Two Tizen Ver. 2.3 Frameworks Web Framework Native Subsystems 2
Tizen Ver. 2.3 Web Framework (1) To accommodate most up-to-date Web technologies To provide HTML5 functionalities defined by W3C Video, Audio, Device orientation, Network information, etc. To support Tizen features not provided from HTML5 Bluetooth, SMS, NFC, Call history, etc. 3
Tizen Ver. 2.3 Web Framework (2) Key modules Tizen Common Device API DOM, Forms, and Styles W3C/HTML5 Storage Supplementary FullScreen API Communication Device I/O Graphics Typed Array Media Performance and Optimization User Interface Communication WebGL Web Runtime 4
Tizen Common To provide a set of basic definitions and interfaces that are used in the Tizen Device API Filters Sorting modes information Generic error handling Generic event handling Tizen Common Communication I/O Device API User Interface 5
To retrieve information about application installed To manage alarm To run at a specific time Device API Tizen Common Communication I/O User Interface 6
Communication To use communication capability of Tizen devices Bluetooth Messaging SMS, MMS, and Email NFC Push notification Secure element SIM card, secure SD card Device API Tizen Common Communication I/O User Interface 7
To manage multimedia contents To accessing content over the Internet To read and update JPEG image To manage playlists Device API Tizen Common Communication I/O User Interface 8
To manage archive files I/O To manage files and directories To communicate with other web or native applications Device API Tizen Common Communication I/O User Interface 9
To manage multimedia related features To control multimedia playback according to media keys To control the volume level of the device. Device API Tizen Common Communication I/O User Interface 10
To manage user-related information Account, Bookmark, Calendar, Call history, Contact To synchronize device data with the OMA server OMA (Open Mobile Alliance) A standard organization which develops open standards for the mobile phone industry. Device API Tizen Common Communication I/O User Interface 11
To access device-specific information Battery level, Available device storage, Version number, Model name, and the Cellular network To use hardware features FM radio, Sensors Device API Tizen Common Communication I/O User Interface 12
User Interface To control visual s and handle notifications To check and change the badge number displayed on the Home Screen To provide notifications about application events Device API Tizen Common Communication I/O User Interface 13
To use CSS for fancy DOM, Forms and Styles CSS (Cascading Style Sheets) is a style sheet language for describing the look and formatting of a document written in a markup language. To handle HTML5 elements W3C/HTML5 DOM, Forms, and Styles Graphics Device Media Communication Storage Performance and Optimization 14
To check battery status Device To detect device motion To monitor browser network connection To manage screen orientation W3C/HTML5 DOM, Forms, and Styles Graphics Device Media Communication Storage Performance and Optimization 15
To create shapes and text Graphics To use HTML5 canvas element and HTML canvas 2D context To use SVG elements SVG (Scalable Vector Graphics) is an XML-based vector image format for two-dimensional graphics with support for interactivity and animation. W3C/HTML5 DOM, Forms, and Styles Graphics Device Media Communication Storage Performance and Optimization 16
Media To generate a multimedia stream To playing and managing multimedia content To control multimedia playback To retrieve information about playback duration To retrieve media content downloading progress W3C/HTML5 DOM, Forms, and Styles Graphics Device Media Communication Storage Performance and Optimization 17
Communication To store the information of the page that the user has viewed To send and receive data between Web sites To connect to the web socket server W3C/HTML5 DOM, Forms, and Styles Graphics Device Media Communication Storage Performance and Optimization 18
To define a policy used to declare content restrictions To allow or block specific HTML elements on a web page W3C/HTML5 DOM, Forms, and Styles Graphics Device Media Communication Storage Performance and Optimization 19
Storage To retrieve file contents and information To manage cached resource To create and access databases using SQL statements. W3C/HTML5 DOM, Forms, and Styles Graphics Device Media Communication Storage Performance and Optimization 20
To copy and paste contents in an editable area To create and manage draggable elements W3C/HTML5 DOM, Forms, and Styles Graphics Device Media Communication Storage Performance and Optimization 21
Performance and Optimization To retrieve visibility status of a web document To control animation frame rate To create running JavaScript thread on the background W3C/HTML5 DOM, Forms, and Styles Graphics Device Media Communication Storage Performance and Optimization 22
To manage location information To retrieve and update position information W3C/HTML5 DOM, Forms, and Styles Graphics Device Media Communication Storage Performance and Optimization 23
FullScreen API To display an element on full screen Based on Mozilla open-source Mozilla is a free software community which produces the Firefox web browser. The Mozilla community uses, develops, spreads and supports Mozilla products, thereby promoting exclusively free software and open standards, with only minor exceptions Supplementary FullScreen API Typed Array WebGL 24
Typed Array To access binary data in JavaScript Based on Khronos specification Khronos is an American not-for-profit industry consortium focused on the creation of open standard, royalty-free application programming interfaces (APIs). Supplementary FullScreen API Typed Array WebGL 25
To use the WebGL WebGL WebGL (Web Graphics Library) is a JavaScript API for rendering interactive 3D computer graphics and 2D graphics within any compatible web browser. Based on Khronos specification Supplementary FullScreen API Typed Array WebGL 26
Web Runtime Environment where all web applications run on Tizen Package Management Installation, Update, etc. Device API Tizen Common Communication DOM, Forms, and Styles Device W3C/HTML5 Storage Supplementary FullScreen API Execution and Lifecycle Launching, Pause, Resume, etc. I/O User Interface Graphics Media Communication Performance and Optimization Typed Array WebGL Runtime API/network access, sandboxing, etc. Web Runtime Device and Platform Integration 27
Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications To include popular standard open source libraries glibc, libstdc++, libxml2, etc. 28
Modules of Tizen Ver. 2.3 Native Subsystems 15 Modules Framework Base Context Messaging Network X Telephony Web 29
Framework To provide the functionality for packaging, launching and managing a Tizen application To manage native application life-cycle To manage native application preferences Framework Base Context Messaging Network X Telephony Web Manager Badge Bundle Data Control Message Port Notification Package Manager Service Shortcut : Tizen Native Sub Module 30
Base The basic module in Tizen native Other native modules depend on it. To contain various open source libraries Framework Base Context Messaging Network X Telephony Web i18n Glib Sqlite C++ Standard Lib. Minizip libxml2 Eglibc OpenMP : Tizen Native Sub Module : Open Source Sub Module 31
To manage the most common media data types Image, audio, and video files Framework Base Context Messaging Network X Telephony Web Media MIME Type Download : Tizen Native Sub Module 32
Context To detect user information and device information To detect a user s walking and running activity To recognize device movement pattern No Move, Double-Tap, Move to Ear, Pick Up, Shake, Snap, Tilt, Turn Face Down, Wrist Up Framework Base Context Messaging Network X Telephony Web Activity Recognition Gesture Recognition : Tizen Native Sub Module 33
To determine the geographical position of their mobile device using various positioning methods Global Positioning (GPS) Network Positioning Framework Base Context Messaging Network X Telephony Web Manager : Tizen Native Sub Module 34
Messaging To grant access to the device messaging capabilities SMS, MMS, and Email messages Framework Base Context Messaging Network X Telephony Web Push Messages Messages : Tizen Native Sub Module 35
To capture and play or display still images, video, and sounds To integrate audio, video, image processing, and streaming media into applications Framework Base Context Messaging Network X Telephony Web Media Codec Camera Recorder Audio I/O Image Util Metadata Extractor Sound : Tizen Native Sub Radio Module Manager Media Tool Player Tone Player WAV Player Video Util OpenAL libexif : Tizen Native Sub Module : Open Source Sub Module 36
Network To provide network- and connectivity-related functionalities Such as Bluetooth, NFC, and Wi-Fi To establish, maintain, and monitor the connections required to send and receive data over a network Framework Base Context Messaging Network X Telephony Web Bluetooth Connection Wi-Fi Wi-Fi Direct NFC Curl : Tizen Native Sub Module : Open Source Sub Module 37
To provide basic cryptographic functions To provide various utility functions OpenSSL open source library To provide information on privileges for user notification Framework Base Context Messaging Network X Telephony Web Privilege Info Key Manager OpenSSL : Tizen Native Sub Module : Open Source Sub Module 38
To manage personal data on a device Such as contacts, schedules, and accounts Framework Base Context Messaging Network X Telephony Web Contacts Calendar Account Manager : Tizen Native Sub Module 39
To provide various system information and a functionality to manage attached devices Framework Base Context Messaging Network X Telephony Web Information Runtime Information Storage Device Settings Media Key Sensor dlog : Tizen Native Sub Module 40
To create and manage application user interface The native framework consists of the Enlightenment Foundation Libraries (EFL). Framework Base Context Messaging Network X Telephony Web EFL Util TBM Surface EFL OpenGL ES 1.1&2.0 Fontconfig & Freetype Cairo : Tizen Native Sub Module : Open Source Sub Module 41
To manage sound data X (Extending the ) Such as voice commands, speech-to-text (STT), and text-tospeech (TTS) Framework Base Context Messaging Network X Telephony Web STT TTS : Tizen Native Sub Module 42
Telephony To provide call, SIM, network, and modem information using the Telephony Service Framework Base Context Messaging Network X Telephony Web Telephony Information : Tizen Native Sub Module 43
Web To provide access to Web pages and Web content To browse the Internet To track browsing history To download Web content Framework Base Context Messaging Network X Telephony Web WebView liboauth Json-Glib : Tizen Native Sub Module : Open Source Sub Module 44
Thank You! 45