슬라이드 제목 없음 - tizen · tizen ver. 2.3 native subsystems composed of system services...
TRANSCRIPT
11
Spring 2015
Soo Dong Kim, Ph.D.Professor, Department of Computer Science
Software Engineering Laboratory
Soongsil UniversityOffice 02-820-0909 Mobile [email protected] http://soft.ssu.ac.kr
Tizen Framework(Tizen Ver. 2.3)
2© 2015 Soo Dong KimSW Design Principles
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
3© 2015 Soo Dong KimSW Design Principles
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.
4© 2015 Soo Dong KimSW Design Principles
Tizen Ver. 2.3 ‘Web’ Framework (2) Key modules
W3C/HTML5 Supplementary
DOM, Forms,and Styles
Device
Graphics
Media
Communication
Storage
Security
UI
Performance and Optimization
Location
FullScreen API
Typed Array
WebGL
Device API
Tizen Common
Communication
I/O
Social
User Interface
Application
Content
Multimedia
System
Web Runtime
5© 2015 Soo Dong KimSW Design Principles
Tizen Common To provide a set of basic definitions and interfaces that are
used in the Tizen Device API
Filters
Sorting modes
Location information
Generic error handling
Generic event handling
Device API
Tizen Common
Communication
I/O
Social
User Interface
Application
Content
Multimedia
System
6© 2015 Soo Dong KimSW Design Principles
Application To retrieve information about application installed
To manage alarm
To run at a specific timeDevice API
Tizen Common
Communication
I/O
Social
User Interface
Application
Content
Multimedia
System
7© 2015 Soo Dong KimSW Design Principles
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
Social
User Interface
Application
Content
Multimedia
System
8© 2015 Soo Dong KimSW Design Principles
Content To manage multimedia contents
To accessing content over the Internet
To read and update JPEG image
To manage playlistsDevice API
Tizen Common
Communication
I/O
Social
User Interface
Application
Content
Multimedia
System
9© 2015 Soo Dong KimSW Design Principles
I/O To manage archive files
To manage files and directories
To communicate with other web or native applications
Device API
Tizen Common
Communication
I/O
Social
User Interface
Application
Content
Multimedia
System
10© 2015 Soo Dong KimSW Design Principles
Multimedia 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
Social
User Interface
Application
Content
Multimedia
System
11© 2015 Soo Dong KimSW Design Principles
Social 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
Social
User Interface
Application
Content
Multimedia
System
12© 2015 Soo Dong KimSW Design Principles
System 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
Social
User Interface
Application
Content
Multimedia
System
13© 2015 Soo Dong KimSW Design Principles
User Interface To control visual UIs 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
Social
User Interface
Application
Content
Multimedia
System
14© 2015 Soo Dong KimSW Design Principles
DOM, Forms and Styles To use CSS for fancy UI
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
Communication
Storage
Performance and Optimization
Device
Media
Security
UI
Location
15© 2015 Soo Dong KimSW Design Principles
Device To check battery status
To detect device motion
To monitor browser network connection
To manage screen orientation
W3C/HTML5
DOM, Forms, and Styles
Graphics
Communication
Storage
Performance and Optimization
Device
Media
Security
UI
Location
16© 2015 Soo Dong KimSW Design Principles
Graphics To create shapes and text
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
Communication
Storage
Performance and Optimization
Device
Media
Security
UI
Location
17© 2015 Soo Dong KimSW Design Principles
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
Communication
Storage
Performance and Optimization
Device
Media
Security
UI
Location
18© 2015 Soo Dong KimSW Design Principles
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
Communication
Storage
Performance and Optimization
Device
Media
Security
UI
Location
19© 2015 Soo Dong KimSW Design Principles
Security 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
Communication
Storage
Performance and Optimization
Device
Media
Security
UI
Location
20© 2015 Soo Dong KimSW Design Principles
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
Communication
Storage
Performance and Optimization
Device
Media
Security
UI
Location
21© 2015 Soo Dong KimSW Design Principles
UI To copy and paste contents in an editable area
To create and manage draggable elements
W3C/HTML5
DOM, Forms, and Styles
Graphics
Communication
Storage
Performance and Optimization
Device
Media
Security
UI
Location
22© 2015 Soo Dong KimSW Design Principles
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
Communication
Storage
Performance and Optimization
Device
Media
Security
UI
Location
23© 2015 Soo Dong KimSW Design Principles
Location To manage location information
To retrieve and update position information
W3C/HTML5
DOM, Forms, and Styles
Graphics
Communication
Storage
Performance and Optimization
Device
Media
Security
UI
Location
24© 2015 Soo Dong KimSW Design Principles
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
25© 2015 Soo Dong KimSW Design Principles
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
26© 2015 Soo Dong KimSW Design Principles
WebGL To use the 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
27© 2015 Soo Dong KimSW Design Principles
Web Runtime Environment where all web applications run on Tizen
Package Management
Installation, Update, etc.
Execution and Lifecycle
Launching, Pause, Resume, etc.
Runtime Security
API/network access, sandboxing, etc.
Device and Platform Integration
W3C/HTML5 Supplementary
DOM, Forms,and Styles
Device
Graphics
Media
Communication
Storage
Security
UI
Performance and Optimization
Location
FullScreen API
Typed Array
WebGL
Device API
Tizen Common
Communication
I/O
Social
User Interface
Application
Content
Multimedia
System
Web Runtime
28© 2015 Soo Dong KimSW Design Principles
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.
29© 2015 Soo Dong KimSW Design Principles
15 Modules
Modules of Tizen Ver. 2.3 Native Subsystems
Telephony
Application Framework
Base Location
WebUIXUI
Messaging Social
Context
Multimedia
Content
Security
System
Network
30© 2015 Soo Dong KimSW Design Principles
Application Framework To provide the functionality for packaging, launching and
managing a Tizen application
To manage native application life-cycle
To manage native application preferences
Telephony
ApplicationFramework
Base Location
WebUIXUI
Messaging Social
Context
Multimedia
Content
Security
System
Network
ApplicationApplication
Manager
Notification
Badge
MessagePort
ServiceApplication
PackageManager
Shortcut
Bundle
DataControl
: Tizen Native Sub Module
31© 2015 Soo Dong KimSW Design Principles
Base The basic module in Tizen native
Other native modules depend on it.
To contain various open source libraries
: Tizen Native Sub Module
: Open Source Sub Module
Telephony
ApplicationFramework
Base Location
WebUIXUI
Messaging Social
Context
Multimedia
Content
Security
System
Network
i18n Glib
Eglibc
Sqlite
libXML2 OpenMP
C++Standard Lib.
Minizip
32© 2015 Soo Dong KimSW Design Principles
Content To manage the most common media data types
Image, audio, and video files
Telephony
ApplicationFramework
Base Location
WebUIXUI
Messaging Social
Context
Multimedia
Content
Security
System
Network
MediaContent
: Tizen Native Sub Module
MIMEType
Download
33© 2015 Soo Dong KimSW Design Principles
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
Telephony
ApplicationFramework
Base Location
WebUIXUI
Messaging Social
Context
Multimedia
Content
Security
System
Network
ActivityRecognition
: Tizen Native Sub Module
GestureRecognition
34© 2015 Soo Dong KimSW Design Principles
Location To determine the geographical position of their mobile
device using various positioning methods
Global Positioning System (GPS)
Network Positioning System
Telephony
ApplicationFramework
Base Location
WebUIXUI
Messaging Social
Context
Multimedia
Content
Security
System
Network
LocationManager
: Tizen Native Sub Module
35© 2015 Soo Dong KimSW Design Principles
Messaging To grant access to the device messaging capabilities
SMS, MMS, and Email messages
Telephony
ApplicationFramework
Base Location
WebUIXUI
Messaging Social
Context
Multimedia
Content
Security
System
Network
: Tizen Native Sub Module
Push Messages Messages
36© 2015 Soo Dong KimSW Design Principles
Multimedia To capture and play or display still images, video, and sounds
To integrate audio, video, image processing, and streaming media into applications
Telephony
ApplicationFramework
Base Location
WebUIXUI
Messaging Social
Context
Multimedia
Content
Security
System
Network
: Tizen Native Sub Module
MediaCodec
Camera Recorder Audio I/O
Image UtilMetadataExtractor
SoundManager
Radio
Media Tool Player Tone Player WAV Player
Video Util OpenAL libEXIF
: Tizen Native Sub Module
: Open Source Sub Module
37© 2015 Soo Dong KimSW Design Principles
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
Telephony
ApplicationFramework
Base Location
WebUIXUI
Messaging Social
Context
Multimedia
Content
Security
System
Network
Bluetooth Connection Wi-Fi Wi-Fi Direct
NFC Curl
: Tizen Native Sub Module
: Open Source Sub Module
38© 2015 Soo Dong KimSW Design Principles
Security To provide basic cryptographic functions
To provide various utility functions
OpenSSL open source library
To provide information on privileges for user notification
Telephony
ApplicationFramework
Base Location
WebUIXUI
Messaging Social
Context
Multimedia
Content
Security
System
Network
Privilege Info Key Manager OpenSSL
: Tizen Native Sub Module
: Open Source Sub Module
39© 2015 Soo Dong KimSW Design Principles
Social To manage personal data on a device
Such as contacts, schedules, and accounts
Telephony
ApplicationFramework
Base Location
WebUIXUI
Messaging Social
Context
Multimedia
Content
Security
System
Network
Contacts CalendarAccountManager
: Tizen Native Sub Module
40© 2015 Soo Dong KimSW Design Principles
System To provide various system information and a functionality to
manage attached devices
Telephony
ApplicationFramework
Base Location
WebUIXUI
Messaging Social
Context
Multimedia
Content
Security
System
Network
RuntimeInformation
Storage Device
: Tizen Native Sub Module
SystemInformation
Media Key Sensor dlogSystemSettings
41© 2015 Soo Dong KimSW Design Principles
UI To create and manage application user interface
The native UI framework consists of the Enlightenment Foundation Libraries (EFL).
Telephony
ApplicationFramework
Base Location
WebUIXUI
Messaging Social
Context
Multimedia
Content
Security
System
Network
TBM Surface EFLOpenGL ES
1.1&2.0EFL Util
CairoFontconfig &
Freetype
: Tizen Native Sub Module
: Open Source Sub Module
42© 2015 Soo Dong KimSW Design Principles
UIX (Extending the UI) To manage sound data
Such as voice commands, speech-to-text (STT), and text-to-speech (TTS)
Telephony
ApplicationFramework
Base Location
WebUIXUI
Messaging Social
Context
Multimedia
Content
Security
System
Network
TTSSTT
: Tizen Native Sub Module
43© 2015 Soo Dong KimSW Design Principles
Telephony To provide call, SIM, network, and modem information using
the Telephony Service
Telephony
ApplicationFramework
Base Location
WebUIXUI
Messaging Social
Context
Multimedia
Content
Security
System
Network
: Tizen Native Sub Module
TelephonyInformation
44© 2015 Soo Dong KimSW Design Principles
Web To provide access to Web pages and Web content
To browse the Internet
To track browsing history
To download Web content
Telephony
ApplicationFramework
Base Location
WebUIXUI
Messaging Social
Context
Multimedia
Content
Security
System
Network
libOAuth Json-GlibWebView
: Tizen Native Sub Module
: Open Source Sub Module
45© 2015 Soo Dong KimSW Design Principles
Thank You !