45
1 1 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 [email protected] http://soft.ssu.ac.kr Tizen Framework ( Tizen Ver. 2.3)

슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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)

Page 2: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 3: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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.

Page 4: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 5: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 6: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 7: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 8: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 9: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 10: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 11: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 12: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 13: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 14: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 15: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 16: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 17: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 18: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 19: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 20: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 21: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 22: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 23: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 24: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 25: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 26: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 27: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 28: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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.

Page 29: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 30: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 31: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 32: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 33: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 34: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 35: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 36: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 37: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 38: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 39: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 40: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 41: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 42: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 43: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 44: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

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

Page 45: 슬라이드 제목 없음 - Tizen · Tizen Ver. 2.3 Native Subsystems Composed of system services and a set of native modules across various domains Used for developing native applications

45© 2015 Soo Dong KimSW Design Principles

Thank You !