TIZEN Overview

Open Source Project

2014.09.22 INDEX

1 Introduction to

2 How to Develop Tizen Applications

3 Example of Tizen Application

4 About Ajou Tizen Supporters 1 Introduction to Tizen

3 Background

• Android’s market share – 70% • Patent fee - Android platform and its associated technologies • Competition between manufacturers • Necessity for an alternative OS • TIZEN, OS, Ubuntu Mobile

4 Background of Platform

– Environment that an applications can be developed and executed on – Platform ☞ Hardware + + Run- time libraries – Includes services and open API’s

5 What is TIZEN?

• A project within Foundation for a Smart Device OS • Technical Steering Group: Samsung & Intel • Open Source Platform Based on GNU C library • Current(March 2015) release - TIZEN 2.3 • Application Type – Web app(HTML5/Javascript + CSS) – Native app(C language) – Hybird app(Web + Native)

6 What is TIZEN?

• Open source components of Tizen – X Windows, Cairo, EFL for UI & Graphics – Gstreamer, PulseAudio, OpenAL for Multimedia – Connman, Bluez, libsoup, wpa_supplicant for Connectivity – WebKit2 for Web – SMACK & OpenSSL for Security – Dbus, glibc for Base – Sqlite for Database & PIM – Linux for OS Kernel – Eclipse for Tizen SDK – QEMU, U-Boot for Target Emulator – GCC, llvm, cmake, gbs for build – Etc….

7 TIZEN Architecture

Web Application

Web Framework

W3C/HTML5 Device Video Touch BT Call CSS3 WebGL LB NFC Worker … Msg … Web Runtime

Core Framework Native Application

Application Graphics & UI Multimedia Web Messaging Location Framework

Security System Base Connectivity Telephony PIM

Kernel

Linux Kernel & device drivers

8 TIZEN Architecture

Kernel

Linux Kernel & device drivers

 Overall management of system devices/resources  Linux Kernel

Core Framework

Application Graphics & UI Multimedia Web Messaging Location Framework

Security System Base Connectivity Telephony PIM

 Provides infrastructure in which each application works seamlessly in the platform  Basic functions of mobile devices 9 TIZEN Core Services of Mobile

10 TIZEN Architecture

Application

Web Application Native Application

Web Framework Public API

W3C/HTML5 Device APIs • API based on C for Video Touch BT Call developing Native CSS3 WebGL LBS NFC Application Worker … Msg … Web Runtime

 API, Data Structure, and UI for Tizen App development  Web Framework – HTML5/Javascript API, Device API

11 Reasons for Programming in Tizen

• Tizen is Based on Standards – Strongly supports HTML5 • Tizen is OPEN • Tizen is Heterogeneous – Designed to be used for various devices(profiles)

12 2 How to Develop Tizen Applications Tizen Development Environment

Web Framework

W3C/HTML5 Device APIs Video Touch BT Call CSS3 WebGL LBS NFC Worker … Msg … Web Runtime

 Web Framework – HTML5, Javascript API  Native Application - Tizen API based on C

14 Tizen Applications

• Web Apps – Web Application development environment – since Tizen 1.0 – Included in Tizen SDK – Various sample applications – Plans for Samsung smart TV’s with Tizen OS supporting web applications

15 Tizen Applications

• Web Apps Fundamental – W3C/HTML5 – Device API – JqueryMobile base UI • Device API – Based on JavaScript – Provides access to Platform Device – Device resources – Asynchronous Success callback Function

16 Tizen Application Package

• Web Apps – HTML5 + Javascript + CSS 기반으로 Running – Package file: *.wgt Web application Package contents

Name Description config.xml Application configuration data icon.png Application Default icon index. Application Default start file / CSS source file directory js/ Javascript file directory 17 Tizen Application Package • Native Apps – C and Tizen native API – Package file: *.tpk

Native application Package contents

Name Description manifest.xml Application configuration data resource/ Application Resource data src/ Application source file inc/ Application include header file data/ Application Private data lib/ Application library directory

18 shared/ Sharable directory between application 3 Example of Tizen Application

19 Hello TIZEN!

20 Hello World

1. File > New > Tizen Web Project

21 Hello World

2. Go to Templete > Basic > Basic Application , type in the project name and Enter

22 Hello World

You must have a security profile before running an application

3. menu > Window > Preferences

4. Go to Security Profiles tab under Tizen SDK, and click Add

After adding a profile name, click Generate to use the Certificate Generator

Fill out the required field(*) and click OK

23 Hello World

5. You can see the page design and the source code at the same time by opening index.html

24 Hello World

6. Click the left-most icon in the Connection Explorer to generate and start a Tizen emulator

25 Hello World

7. After an emulator is generated and turned on, you can run the project as a Tizen Web Application

26 Hello World

8. Tizen Web provides the Simulator to simulate sensor inputs or options to verify you applications

you can use the Tizen Web Simulator by going to Run as > Tizen Web Simulator ( Chrome is required)

27 Tizen API Reference

• https://developer.tizen.org/ provides the API documentation under Develop menu 28 Tizen Open Source (github)

29 4 About Ajou Tizen Supporters

1) Google Site

2) Contacts

3) ETC Google Site

• https://sites.google.com/site/ajoutizenc ommunity

31 Contacts

Name Lab E-Mail Address Phone Number

Kwon, YongJae Paldal 1004-1 [email protected] 010-4412-5075

Lee, Seung-Kyu Paldal 1004-1 [email protected] 010-8526-5127

Park, Hyun-Ju Paldal 913 [email protected] 010-9338-0955

32 Development Reference

33 Development Guide

https://developer.tizen.org/documentation/dev-guide/2.2.1

34 Reference Site

• Tizen official websites – https://tizen.org • Tizen SDK download and Events checking. – mailing list & IRC • IRC: discussion, troubleshooting, collaboration, chatting with other contributors – source code: https://review.tizen.org/git/ – code review: https://review.tizen.org/gerrit/ – wiki: https://wiki.tizen.org

35