SlideShare a Scribd company logo
1 of 168
Download to read offline
0
1
2
3
3.1
3.2
3.3
4
4.1
4.2
4.3
4.4
4.5
4.6
4.7
5
5.1
5.2
5.3
5.4
5.5
5.6
5.7
6
6.1
6.2
6.3
6.4
6.5
6.6
Table	of	Contents
Introduction
Kata	Pengantar
Pendahuluan
Mengenal	Tizen	dan	Penerapannya
Arsitektur	Umum	Tizen
Penerapan	dan	Penggunaan	Tizen
Pengembangan	aplikasi	Tizen
Pemrograman	Tizen	untuk	Platform	Windows
Persiapan	Instalasi
Instalasi	Tizen
Konfigurasi	Setelah	Instalasi	Tizen
Mengenal	Tizen	Development	IDE
Mengenal	Tizen	Emulator
Hello	World	Tizen
Proyek	Tizen	Pertamaku
Pemrograman	Tizen	untuk	Platform	Linux
Persiapan	Instalasi
Instalasi	Tizen
Konfigurasi	Setelah	Instalasi	Tizen
Mengenal	Tizen	Development	IDE
Mengenal	Tizen	Emulator
Hello	World	Tizen
Proyek	Tizen	Pertamaku
Pemrograman	Tizen	untuk	Platform	Mac
Persiapan	Instalasi
Instalasi	Tizen
Konfigurasi	Setelah	Instalasi	Tizen
Mengenal	Tizen	Development	IDE
Mengenal	Tizen	Emulator
Hello	World	Tizen
Panduan	Dasar	Pemrograman	Tizen
2
6.7
7
8
Proyek	Tizen	Pertamaku
Resouces
Profil	Penulis
Panduan	Dasar	Pemrograman	Tizen
3
Tizen	merupakan	open	source	project	untuk	sistem	operasi	yang	berbasis	modifikasi	Linux
Kernel	dan	WebKit	runtime.	Dengan	Tizen,	kita	dapat	menjalankan	aplikasi	diatas
Smartphone,	Wearable	ataupun	complaisance	devices	yang	mengusung	OS	Tizen.
Buku	Panduan	Dasar	Pemrograman	Tizen	dibuat	dengan	maksud	dan	tujuan	untuk
membantu	para	developer	pemula	atau	developer	yang	sudah	memiliki	ketrampilan
memprogram	aplikasi	mobile	baik	itu	Windows	Phone,	Android	ataupun	iOS	dalam
membuat	aplikasi	mobile	diatas	platform	Tizen.
Status
Release	1.0,	13	March	2016
Panduan	Dasar	Pemrograman	Tizen
4Introduction
Kata	Pengantar
Tizen	adalah	sistem	operasi	terbuka,	efisien	dan	fleksibel	yang	dibangun	untuk	bekerja	pada
semua	kategori	devices.	Saat	ini	Tizen	telah	menjadi	bagian	penting	pada	ekosistem	device
manufacture,	mobile	operators,	app	developers	dan	ISV,	karena	jumlah	dan	jenis	device
yang	menggunakan	sistem	operasi	ini	terus	bertambah,	termasuk	di	Indonesia.	Tizen
dirancang	untuk	memenuhi	kebutuhan	berbagai	jenis	industri,	seperti	automotive	IVI	(In-
Vehicle	Infotainment),	mobile,	TV	dan	Wearable.	Manufacture	dapat	memodifikasi	Tizen
sesuai	dengan	kebutuhan,	untuk	berjalan	di	atas	spesifikasi	hardware	yang	terbatas,	seperti
memory,	processor	dan	power.	Efisiensi	adalah	salah	satu	keunggulan	Tizen	dibanding
sistem	operasi	lainnya.
Untuk	app	developers	dan	ISV,	Tizen	menyediakan	fasilitas	untuk	membangun	aplikasi
menggunakan	native	(C/C++)	dan	web	(HTML5/JavaScript)	secara	produktif.	Karena
cakupannya	yang	luas,	developer	dapat	membuat	aplikasi	yang	terkoneksi	antara	semua
smart	devices,	seperti	wearables,	consumer	electronics	(TVs,	gaming	consoles,	DVRs,	dan
lain-lain),	mobil	dan	IoT	appliances.	Buku	ini	akan	sangat	membantu	developers	untuk
memulai	eksplorasi	tentang	Tizen	sebagai	platform	development.	Dengan	gaya	penulisan
yang	praktikal	buku	ini	dapat	mempercepat	proses	pembelajaran	hingga	anda	dapat
membuat	program	Tizen	pertama	menggunakan	toolset	seperti	Tizen	IDE,	emulator	dan
SDK.
Pengembangan	aplikasi	di	Tizen	dapat	dilakukan	dengan	pendekatan	native	(C/C++)
maupun	web	(HTML5/JavaScript).	Dalam	buku	ini	anda	akan	mencoba	pendekatan	pertama
menggunakan	ANSI	C	dan	Enlightenment	Framework	Library	(EFL)	untuk	membuat
program	kalkulator	sederhana.	Nantikan	buku	selanjutnya	yang	akan	mengupas	lebih	dalam
mengenai	EFL	objects.
Semoga	buku	ini	membantu	eksplorasi	Tizen	anda.
Risman	Adnan,	Director,	Samsung	R&D	Indonesia.
Panduan	Dasar	Pemrograman	Tizen
5Kata	Pengantar
Pendahuluan
Tizen	merupakan	open	source	project	untuk	sistem	operasi	yang	berbasis	modifikasi	Linux
Kernel	dan	WebKit	runtime.	Dengan	Tizen,	kita	dapat	menjalankan	aplikasi	diatas
Smartphone,	Wearable	ataupun	complaisance	devices	yang	mengusung	OS	Tizen.
Buku	Panduan	Dasar	Pemrograman	Tizen	dibuat	dengan	maksud	dan	tujuan	untuk
membantu	para	developer	pemula	atau	developer	yang	sudah	memiliki	ketrampilan
memprogram	aplikasi	mobile	baik	itu	Windows	Phone,	Android	ataupun	iOS	dalam
membuat	aplikasi	mobile	diatas	platform	Tizen.
Ada	empat	bab	yang	akan	dibahas	pada	buku	ini,	antara	lain:
Mengenal	Tizen	dan	penerapannya
Pemrograman	Tizen	untuk	Platform	Windows
Pemrograman	Tizen	untuk	Platform	Linux
Pemrograman	Tizen	untuk	Platform	Mac
Panduan	Dasar	Pemrograman	Tizen
6Pendahuluan
Pendahuluan
Tizen	adalah	perangkat	lunak	(software)	platform	berbasis	open	source	yang	diperuntukan
untuk	berbagai	platform	seperti	smartphone,	wearable,	tablet,	netbook,	smart	TV	dan	lain-
lainnya.
Tizen	hadir	sebagai	alternatif	platform	lain	dari	Android	dan	iOS	yang	diusung	oleh
Samsung.	Tizen	dibangun	dari	Kernel-linux	memiliki	flesibilitas	yang	tinggi	seperti	Android.
Pada	bab	ini	kita	akan	mengeksplorasi	apa	dan	bagaimana	Tizen	itu	sendiri.
Mari	kita	lanjutkan.
Panduan	Dasar	Pemrograman	Tizen
7Mengenal	Tizen	dan	Penerapannya
Arsitektur	Umum	Tizen
Seperti	diketahui	bahwa	Tizen	dibangun	diatas	Kernel	Linux.	Selanjutnya	diatasnya
dibangun	beberapa	library	API	guna	mendukung	aplikasi	yang	berjalan	diatas	platform
Tizen.
Library	API	ini	dipergunakan	untuk	operasional	dan	kontrol	dari	Tizen	itu	sendiri.	Komponen
ini	meliputi:
Base
Content
Location
Messaging
Multimedia
Social
System
Telephony
UI
Web
Application	Framework
Network
Security
Secara	umum,	pembaca	dapat	melihat	pada	gambar	dibawah	ini.
Masing-masing	API	ini	akan	dibahas	pada	buku	selanjutnya.
Panduan	Dasar	Pemrograman	Tizen
8Arsitektur	Umum	Tizen
Penerapan	dan	Penggunaan	Tizen
Seperti	dijelaskan	diawal	bahwa	Tizen	tidak	hanya	diperuntukan	untuk	platform	smartphone
tetapi	peralatan	lainnya.
Salah	satu	produk	Tizen	yang	diluncurkan	untuk	platform	smartphone	adalah	Samsung	Z1.
Anda	dapat	membaca	spesifikasinya	pada	alamat	website	dibawah	ini.
http://www.samsung.com/in/consumer/mobile-devices/smartphones/others/SM-
Z130HZKDINS
Panduan	Dasar	Pemrograman	Tizen
9Penerapan	dan	Penggunaan	Tizen
Selain	Samsung	Z1,	Samsung	juga	meluncurkan	Samsung	Z3	dimana	pembaca	dapat
melakukan	review	spesifikasinya	pada	alamat	ini.
http://www.samsung.com/in/consumer/mobile-devices/smartphones/others/SM-
Z300HZKDINS
Semua	Samsung	Smart	TV	juga	menggunakan	Tizen	OS	sebagai	bagian	operational	nya.
Selain	Samsung	Smart	TV,	Samsung	Wearable	juga	menggunakan	Tizen	OS	sebagai
sistem	yang	ditanam	pada	peralatan	tersebut.
Kalau	kita	boleh	menarik	benang	merahnya,	dengan	investasi	dalam	mengembangkan
aplikasi	Tizen,	kita	dapat	melakukan	instalasi	ke	beberapa	peralatan	platform.
Panduan	Dasar	Pemrograman	Tizen
10Penerapan	dan	Penggunaan	Tizen
Pengembangan	Aplikasi	Tizen
Tizen	development	menawarkan	beberapa	target	platform	peralatan	yang	cukup	banyak.
Untuk	pengembangan,	Tizen	menawarkan	dua	opsi	dalam	development	yaitu:
Native	Application
Web	Application
Pada	Native	application	kita	akan	mengembangkan	aplikasi	Tizen	dalam	bahasa	C.
Keuntungan	yang	didapatkan	pada	opsi	ini	adalah	kecepatan	dan	keandalan.	Hal	ini
disebabkan	kita	secara	langsung	mengakses	Tizen	API.
Sedangkan	Web	application	diperuntukan	bagi	para	developer	yang	memiliki	dasar
HTML5.	Seperti	diketahui	HTML5	ini	juga	didukung	oleh	platform	lain	seperti	Android,	iOS,
Windows	Phone,	FireOS.	Keuntungan	opsi	ini,	kita	dapat	mempergunakan	template	HTML5
yang	sudah	ada	sehingga	ini	dapat	dipakai	oleh	platform	lain	yang	berbasis	HTML5.
Panduan	Dasar	Pemrograman	Tizen
11Pengembangan	aplikasi	Tizen
Pendahuluan
SDK	Tizen	terdiri	dari	beberapa	perangkat	utama	yang	dibutuhkan	untuk	membuat	dan
menjalankan	aplikasi	Tizen.
Pada	sesi	ini	kita	akan	melakukan	instalasi	dan	konfigurasi	guna	membuat	dan	menjalankan
aplikasi	Tizen	diatas	platform	Windows.	Disini	penulis	akan	menggunakan	sistem	operasi
Windows	10	sebagai	testingnya.
Panduan	Dasar	Pemrograman	Tizen
12Pemrograman	Tizen	untuk	Platform	Windows
Persiapan	untuk	Instalasi
Sebelum	memulai	melakukan	instalasi	Tizen	pada	komputer,	berikut	beberapa	hal	yang
perlu	disiapkan	untuk	membuat	dan	menjalankan	aplikasi	Tizen	pada	platform	windows.
Perangkat	Keras
Untuk	membuat	aplikasi	Tizen	pada	platform	Windows,	berikut	perangkat	keras	yang
dibutuhkan	untuk	mempersiapkan	environment	pembuatan	aplikasi	Tizen.
Komponen Minimum Rekomendasi
Kecepatan	Prosesor 2	GHz 3	GHz
Tipe	Prosesor Intel	Dual-Core Intel	Core	i5
Memori	(RAM) 3	GB 4	GB
Kapasitas	Disk	kosong 6	GB 10	GB
Sistem	Operasi
Proses	pembuatan	aplikasi	Tizen	dapat	berjalan	dengan	baik	pada	sistem	operasi	Windows
7/8/10	dengan	tipe	sistem	operasi	32	bit	maupun	64	bit.
Microsoft	Windows	® Minimum Rekomendasi
Windows®	7 32	bit 64	bit
Windows®	8 32	bit 64	bit
Windows®	10 32	bit 64	bit
Java	Development	Kit	(JDK)
Untuk	membuat	dan	menjalankan	aplikasi	Tizen,	dibutuhkan	Java	Development	Kit	(JDK)
versi	7	atau	setelahnya.	JDK	dapat	diunduh	dihalaman	resmi	Oracle	pada	tautan
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html.
Pilih	dan	unduh	JDK	yang	sesuai	dengan	tipe	sistem	operasi	windows	yang	digunakan.
Pada	saat	buku	ini	ditulis,	versi	terakhir	JDK	adalah	versi	80.
Panduan	Dasar	Pemrograman	Tizen
13Persiapan	Instalasi
Berikut
merupakan	tautan	untuk	mengunduh	JDK	untuk	platform	Windows.
Microsoft
Windows	®
Nama	File Link
32	Bit
jdk-7u80-
windows-
i586.exe
http://download.oracle.com/otn-pub/java/jdk/7u80-
b15/jdk-7u80-windows-i586.exe
64	Bit
jdk-7u80-
windows-
x64.exe
http://download.oracle.com/otn-pub/java/jdk/7u80-
b15/jdk-7u80-windows-x64.exe
Setelah	berhasil	mengunduh	file	JDK	yang	sesuai,	jalankan	file	.exe	dan	ikuti	perintah	yang
ditampilkan.
Tizen	Emulator
Berikut	merupakan	komponen	yang	dibutuhkan	agar	bisa	menjalankan	Tizen	Emulator	pada
platform	Windows.
Panduan	Dasar	Pemrograman	Tizen
14Persiapan	Instalasi
Komponen Rekomendasi
CPU
CPU	yang	mendukung	teknologi	Intel®	VT-x,	suatu	teknologi	virtualisasi
untuk	mengemulasikan	atau	menjalankan	Tizen	Emulator.	Jika	teknologi
ini	tidak	ada,	maka	Tizen	Emulator	akan	berjalan	dengan	sangat	lambat.
Resolusi
Layar
1280	x	1024
Kartu
Grafis
Berikut	beberapa	kartu	grafis	yang	telah	dicoba	dan	dibuktikan	berhasil
menjalankan	Tizen	Emulator:
NVIDIA:	GeForce	8300	GS,	GeForce	8500	GT,	GeForce	GT	220,
GeForce	GT	430,	GeForce	GT	530,	GeForce	GT	330M,	GeForce	GTX
550Ti,	Quadro	NVS	290.
ATI:	RADEON	HD	4850,	RADEON	HD	5450.
Intel:	HD	Graphics	2000,	HD	Graphics	2500,	HD	Graphics	4000.
Catatan:
Jika	komputer	yang	digunakan	untuk	membuat	aplikasi	Tizen
menggunakan	teknologi	Nvidia	Optimus,	maka	Emulator	akan	bekerja
dengan	menggunakan	kartu	grafis	on-board.
Kartu	grafis	integrated	yang	terletak	pada	motherboard	Intel
Q33/Q35/Q43/Q45	tidak	mendukung	untuk	menjalankan	emulator	Tizen.
Generasi	pertama	kartu	grafis	Intel	HD	juga	tidak	mendukung	untuk
menjalankan	emulator.
Driver
Untuk	memastikan	setiap	perangkat	keras	yang	dibutuhkan	dapat
berjalan	dengan	baik,	periksa	dan	install	driver-driver	untuk	tiap-tiap
perangkat	keras	yang	dibutuhkan.	Untuk	Windows	7/8/10,	instalasi	dan
update	driver	bisa	dilakukan	melalui	Control	Panel	>	System	and
Security	>	Windows	Update.
Intel®	VT-x
Terdapat	dua	cara	untuk	memeriksa	apakah	prosesor	yang	digunakan	mendukung	Intel	VT-
x.
1.	 Periksa	apakah	prosesor	yang	digunakan	mendukung	Intel	VT-x	melalui	halaman
http://ark.intel.com/.
2.	 Unduh	dan	install	perangkat	lunak	bernama	Intel	Processor	Identification	Utility	pada
tautan	https://downloadcenter.intel.com/download/7838/Intel-Processor-Identification-
Utility-Windows-Version	dan	pastikan	prosesor	mendukung	Intel	VT-x.
Panduan	Dasar	Pemrograman	Tizen
15Persiapan	Instalasi
3.	
BIOS	(Basic	Input	Output	System)
Pastikan	pengaturan	pada	BIOS	memungkinkan	sistem	operasi	untuk	menggunanakan	Intel
VT-x.	Pastikan	dua	pengaturan	dibawah	ini	enabled	pada	BIOS.
Intel	Virtualisation	Technology	VT-x
Intel	Execute	Disable	Bit
Kebanyakan	pengaturan	BIOS	pada	komputer	terkini	telah	membuat	dua	pengaturan	diatas
menjadi	enabled.	Namun	tidak	ada	salah	nya	memastikan	bahwa	BIOS	sudah	diatir	agar
tizen	emulator	dapat	berjalan	dengan	baik.
Microsoft®	Hyper-V
Tizen	emulator	tidak	dapat	berjalan	bersamaan	dengan	Microsoft	Hyper-V	yang	digunakan
untuk	menjalankan	Windows	Phone	Emulator.	Untuk	menjalankan	Tizen	Emulator,	pastikan
Microsoft	Hyper-V	dalam	kondisi	off/disable.	Untuk	mematikan	Microsoft	Hyper-V,	buka
Control	Panel	>	Programs	>	Turn	Windows	features	on	or	off	>	Disable	(uncheck)
Hyper-V	>	OK.
Panduan	Dasar	Pemrograman	Tizen
16Persiapan	Instalasi
Tunggu	beberapa	saat	hingga	windows	meminta	untuk	restart	komputer.	Klik	tomblok
Restart	now	untuk	menghidupkan	ulang	komputer.	
Intel®	Hardware	Accelerated	Execution	Manager	(HAXM)
Panduan	Dasar	Pemrograman	Tizen
17Persiapan	Instalasi
Intel	Hardware	Accelerated	Execution	Manager	(Intel®	HAXM)	adalah	mesin	virtualisasi
yang	menggunakan	Intel	Virtualization	Technology	(VT)	untuk	optimisasi	proses	emulasi
Tizen	pada	komputer	dengan	sistem	operasi	Windows®	atau	Mac	OS®.	Dengan	kombinasi
Tizen	Emulator	dan	Tizen	SDK,	Intel®	HAXM	mempercepat	kinerja	Tizen	Emulator,	dengan
kata	lain	Tizen	Emulator	menjadi	lebih	lancar/smooth.
Intel®	HAXM	versi	1.1.1	secara	default	telah	diinstall	bersamaan	dengan	Tizen	SDK.
Namun	jika	Tizen	Emulator	tidak	berhasil	dijalankan,	kita	harus	instalasi	ulang	kembali
Intel®	HAXM.
Untuk	instalasi	Intel®	HAXM,
1.	 Unduh	file	installer	Intel®	HAXM	versi	1.1.9	pada	tautan
http://download.tizen.org/sdk/haxm/1.1.9/win/intelhaxm-tizen.exe.
2.	 Jalankan	file	installer	dan	klik	Yes	pada	dialog	User	Account	Control	(UAC)	yang
muncul.	
3.	 Karena	Intel®	HAXM	versi	1.1.1	secara	default	telah	terinstal	bersamaan	dengan	Tizen
SDK,	maka	akan	muncul	dialog	konfirmasi	seperti	dibawah	ini.	Klik	Yes	untuk
melanjutkan.	
Panduan	Dasar	Pemrograman	Tizen
18Persiapan	Instalasi
4.	 Klik	tombol	Next	untuk	memulai	proses	instalasi	
	Kita	dapat
mengakses	dokumentasi	dengan	menekan	tombol	Intel®	HAXM	Documentation.
5.	 Sesuaikan	jumlah	memory	(RAM)	yang	dialokasikan	untuk	Intel®	HAXM.	
	File	installer	juga
berfungsi	sebagai	alat	konfigurasi	untuk	Intel®	HAXM.	Jika	ingin	mengubah	pengaturan
alokasi	memory	(RAM)	yang	ingin	digunakan,	jalankan	kembali	file	installer.
Panduan	Dasar	Pemrograman	Tizen
19Persiapan	Instalasi
6.	 Konfirmasi	memori	(RAM)	yang	telah	dialokasikan	untuk	Intel®	HAXM	dan	klik	tombol
Install.	
7.	 Tunggu	beberapa	saat	hingga	Intel®	HAXM	terinstal	dengan	smepurna.	
Panduan	Dasar	Pemrograman	Tizen
20Persiapan	Instalasi
8.	 Saat	proses	instalasi	Intel®	HAXM	selesai,	klik	tombol	Finish	untuk	menyelesaikan	dan
keluar	dari	proses	instalasi.	Intel®	HAXM	telah	berhasil	diinstal	dan	siap	untuk
digunakan.	
Untuk	memastikan	Intel®	HAXM	berjalan	dengan	baik,	buka	Command	Prompt	pada
windows	dan	masukkan	perintah:	sc	query	intelhaxm
Jika	Intel®	HAXM	berjalan	dengan	baik,	Command	Prompt	akan	menampilkan	pesan
status	yang	mengindikasikan	state	adalah	“4	RUNNING”.	
Kebutuhan	Tambahan	(Opsional)
Panduan	Dasar	Pemrograman	Tizen
21Persiapan	Instalasi
Untuk	membantu	mengoptimisasi	performansi	dari	aplikasi	Tizen	yang	dibuat,	kita	dapat
menggunakan	suatu	profiling	tool	bernama	T-trace.	Dengan	T-trace	peningkatan
performansi	aplikasi	tizen	dapat	dilakukan	dengan	lebih	mudah.
Untuk	menggunakan	T-trace	di	sistem	operasi	Windows®	7/8/10,	dibutuhkan	suatu
perangkat	lunak	bernama	Python	dengan	versi	2.7.X.	Pada	saat	buku	ini	ditulis,	versi
terkahir	Python	adalah	versi	2.7.11.
Unduh	Python	2.7.11,	kemudian	jalankan	file	dan	ikuti	instruksi	yang	ditampilkan.
Catatan:	Agar	bisa	menggunakan	Python	secara	nyaman	dan	mudah	pada	command
prompt,	kita	harus	membuat	variabel	%PATH%	pada	environment	variable.	Tambahkan
variabel	baru	tersebut	melalui	My	Computer	>	Properties	>	Advanced	>	Environment
Variables.
Panduan	Dasar	Pemrograman	Tizen
22Persiapan	Instalasi
Instalasi	Tizen	SDK
Pada	topik	ini,	kita	akan	membahas	proses	instalasi	Tizen	SDK	(Software	Development	Kit)
pada	sistem	operasi	Windows.	Terdapat	dua	cara	untuk	menginstalasi	Tizen	SDK,	yaitu	GUI
Installer	dan	CLI	Installer.	Pada	topik	ini	akan	dibahas	proses	instalasi	dengan	GUI	Installer
yang	merupakan	proses	instalasi	paling	mudah.
Unduh	SDK
Tizen	SDK	adalah	seperangkat	alat	yang	digunakan	untuk	membuat	Aplikasi	Tizen	Web
dna	Tizen	Native.	Tizen	SDK	terdiri	dari	IDE	(Integrated	Development	Environment),
Emulator,	toolchain,	contoh	kode	program,	and	dokumentasi.	Aplikasi	Tizen	dapat	dibuat
tanpa	harus	bergantung	pada	Tizen	IDE,	selama	aplikasi	Tizen	mengikuti	aturan	pada
packaging	aplikasi	Tizen	(Tizen	Packaging	Rules).	Pada	saat	buku	ini	dibuat,	versi	terakhir
Tizen	SDK	adalah	2.4	Rev	3.
Untuk	mengunduh	Tizen	SDK,	pilih	file	GUI	Installer	berdasarkan	tipe	sistem	operasi.
Microsoft
Windows
®
Nama	File Link
32	Bit
tizen-web-
ide_TizenSDK_2.4.0_Rev3_windows-
32.exe
http://download.tizen.org/sdk/Installer/tizen-
sdk-2.4-rev3/tizen-web-
ide_TizenSDK_2.4.0_Rev3_windows-
32.exe
64	Bit
tizen-web-
ide_TizenSDK_2.4.0_Rev3_windows-
64.exe
http://download.tizen.org/sdk/Installer/tizen-
sdk-2.4-rev3/tizen-web-
ide_TizenSDK_2.4.0_Rev3_windows-
64.exe
GUI	Installer
Setelah	berhasil	mengunduh	file	installer	Tizen	SDK,	instalasi	Tizen	SDK	dengan	cara
double-click	pada	icon	file	installer.
Panduan	Dasar	Pemrograman	Tizen
23Instalasi	Tizen
Instalasi
Setelah	berhasil	mengunduh	Tizen	SDK,	jalankan	file	installer	dengan	cara	double-click
pada	icon/file	installer.
Setelah	menjalankan	file	installer,	maka	akan	muncul	security	warning.	Pilih	Yes	untuk
melanjutkan	proses	instalasi.	Setelah	itu	file	installer	akan	mengekstraksi	beberapa
komponen	file	untuk	proses	instalasi.
Panduan	Dasar	Pemrograman	Tizen
24Instalasi	Tizen
Setelah	file	installer	selesai	mengekstraksi	semua	komponen	yang	diperlukan,	maka	kita
akan	mendapatkan	window	pengaturan	instalasi	seperti	dibawah	ini.
Pada	window	pengaturan	instalasi,	kita	dapat	mengatur	lokasi	direktori	dimana	Tizen	SDK
akan	terinstalasi.	Secara	default,	lokasi	instalasi	Tizen	SDK	untuk	sistem	operasi	windows
adalah	di	C:tizen-sdk.
Pastikan	lokasi	direktori	yang	dipilih	adalah	lokasi	direktori	yang	valig.	Jika	direktori	tersebut
tidak	ada	atau	tidak	valid,	maka	file	installer	akan	menampilkan	bahwa	lokasi	direktori	tidak
valid	seperti	gambar	dibawah	ini.
Jika	telah	selesai	mengatur	lokasi	instalasi,	klik	checkbox	Accept	untuk	menyetujui	syarat
dan	ketentuan.	Untuk	memulai	instalasi,	klik	tombol	Unduh,	tombol	yang	memiliki	gambar
panah	kebawah	dikelilingi	oleh	lingkaran	berwarna	biru.
Panduan	Dasar	Pemrograman	Tizen
25Instalasi	Tizen
Setelah	menekan	tombol	unduh,	tunggu	proses	instalasi	sampai	selesai.	Jika	proses
instalasi	sudah	selesai	maka	kita	akan	melihat	ada	beberapa	program	baru,	yaitu
No. Nama Fungsi
1
Update
Manager
Perangkat	lunak	untuk	mengatur	dan	mengunduh	SDK	yang
diperlukan.
2
Tizen	Web
Simulator
Tizen	simulator,	mensimulasikan	perangkat	Tizen	pada	web
browser	untuk	menjalankan	Tizen	Web	Apps.
3 Tizen	IDE Perangkat	lunak	untuk	membuat	aplikasi	Tizen.
Dengan	menekan	tombol	Quit,	Tizen	SDK	telah	berhasil	diinstal	dan	siap	untuk	digunakan.
Panduan	Dasar	Pemrograman	Tizen
26Instalasi	Tizen
Konfigurasi	Setelah	Instalasi	Tizen
Untuk	melengkapi	proses	instalasi,	kita	harus	menjalankan	Update	Manager	untuk
mengunduh	SDK	yang	diperlukan,	terutama	Tizen	Native	SDK.	Karena	file	installer	hanya
memberikan	kita	SDK	Tizen	Web.	Cari	dan	jalankan	Update	Manager.	Setelah	Update
Manager	dijalankan,	maka	kita	akan	mendpaatkan	kota	dialog	seperti	pada	gambar	dibawah
ini.
Update	manager	memberikan	informasi	beberapa	Tizen	SDK	yang	bisa	diunduh	sebelum
memulai	proses	pembuatan	aplikasi.	Secara	umum,	Update	Manager	memberikan	Tizen
SDK	untuk	beberapa	perangkat,	yaitu	Smartphone,	Smart	TV	dan	Wearable	Device	(Smart
Watch).	Unduh	SDK	yang	diinginkan,	namun	pastikan	kita	mengunduh	SDK	terbaru	untuk
tiap-tiap	perangkat.	Pastikan	komputer	terhubung	ke	internet	sebelum	memulai
instalasi/unduh	Tizen	SDK.
Panduan	Dasar	Pemrograman	Tizen
27Konfigurasi	Setelah	Instalasi	Tizen
Jika	kita	tidak	memiliki	koneksi	internet	yang	baik	mengunduh	Tizen	SDK,	kita	dapat
melakukan	instalasi	SDK	melalu	menu	setting	di	pojok	kanan	atas.
Setelah	diklik,	kita	akan	mendapat	kotak	dialog	dibawah	ini.	Klik	bagian	Install	Option,	dan
pilih	SDK	Image.	Kemudian	isi	dengan	file	SDK	Image	yang	telah	di	unduh	sebelumnya.
Panduan	Dasar	Pemrograman	Tizen
28Konfigurasi	Setelah	Instalasi	Tizen
Panduan	Dasar	Pemrograman	Tizen
29Konfigurasi	Setelah	Instalasi	Tizen
Mengenal	Tizen	Development	IDE
Untuk	membuka	Tizen	IDE,	cari	aplikasi	pada	Application	List	atau	dengan	menekan	tombol
start	pada	keyboard	dan	masukan	kata	kunci	Tizen	IDE.	Setelah	membuka	Tizen	IDE,	maka
kita	akan	mendapatkan	splashscreen	seperti	pada	gambar	dibawah	ini.
Pada	saat	awal	kita	akan	ditanyakan	lokasi	direktori	untuk	bekerja	(workspace).	Secara
default,	Tizen	IDE	akan	memberikan	lokasi	awal	untuk	workspace.	Pilih	lokasi	workspace
yang	diinginkan,	dan	klik	checkbox	'Use	this	as	the	default	and	do	not	ask	again'	agar
Tizen	IDE	tidak	menanyakan	kembali	workspace	setiap	kita	membuka	Tizen	IDE.
Klik	tombol	OK	untuk	membuka	Tizen	IDE.	Dan	akhirnya	kita	mendapatkan	Tizen	IDE
seperti	yang	terlihat	pada	gambar	dibawah	ini.
Panduan	Dasar	Pemrograman	Tizen
30Mengenal	Tizen	Development	IDE
Secara	umum,	Tizen	IDE	mirip	dengan	Eclipse.	Ya!	karena	Tizen	IDE	dikembangkan	dari
Eclipse	IDE.	Pada	setiap	awal	memulai	Tizen	IDE,	kita	akan	diberikan	beberapa	tips	seperti
gambar	dibawah	ini.
Panduan	Dasar	Pemrograman	Tizen
31Mengenal	Tizen	Development	IDE
Panduan	Dasar	Pemrograman	Tizen
32Mengenal	Tizen	Development	IDE
Tizen	Emulator
Tidak	perlu	memiliki	perangkat	berbasis	Tizen	untuk	menguji	aplikasi	Tizen	yang	kita	buat.
Tizen	Emulator	memungkingkan	kita	membuat	aplikasi	Tizen	dan	mencoba	nya	dengan
cepat.
Emulator	yang	disediakan	oleh	Tizen	SDK	meniru	environment	yang	ada	pada	Tizen
Device.	Dengan	menggunakan	replikasi	environment	pada	Tizen	Emulator,	kita	dapat
menguji	coba	aplikasi	yang	kita	buat	sebelum	mendeploy	ke	target	device	Tizen	yang
sesungguh	nya	seperti	Smartphone,	Wearable	(Smart	Watch)	dan	Smart	TV.
Untuk	membuat	dan	menjalankan	Tizen	Emulator,	cari	dan	buka	Emulator	Manager	dari
Application	List.	Setelah	membuka	Emulator	Manager,	maka	kita	akan	mendapatkan
window	seperti	pada	gambar	dibawah	ini.
Membuat	Smartphone	Tizen	Emulator
Untuk	membuat	Tizen	Emulator	untuk	smartphone,	pilih	tab	mobile,	kemudian	tekan	tombol
Create	New	VM.
Panduan	Dasar	Pemrograman	Tizen
33Mengenal	Tizen	Emulator
Lakukan	pengaturan	untuk	tizen	emulator	yang	ingin	dibuat.	Berikut	beberapa	pengaturan
yang	perlu	dilakukan.
Pengaturan Nama	Atribut Rekomendasi
Nama
Emulator
Name
TizenEmulator24
Kita	bebas	memberikan	nama	untuk	emulator	yang
akan	dibuat.
Versi
Emulator
Base	Image 2.4-mobile
Resolusi
Display	>
Resolution
HD	(720	x	1280)
Jumlah
Prosesor
Processor 4
Ukuran
Memory
RAM	Size 1024	MB
Pastikan	pengaturan	HW	Support	untuk	CPU	VT	dan	GPU	adalah	ON/Enable.
Panduan	Dasar	Pemrograman	Tizen
34Mengenal	Tizen	Emulator
Klik	tombol	Confirm	untuk	menyimpan	konfigurasi	dan	membuat	emulator	baru.	Berikut
gambar	jika	berhasil	membuat	emulator	baru.
Jika	kita	ingin	mengubah	konfogurasi	dari	Tizen	Emulator,	klik	tombol	edit	pada	pojok	kanan
atas.
Panduan	Dasar	Pemrograman	Tizen
35Mengenal	Tizen	Emulator
Menjalankan	Smartphone	Tizen	Emulator
Untuk	menjalankan	Tizen	Emulator,	klik	tombol	run	pada	emulator	yang	telah	dibuat.
Security	alert	akan	muncul	saat	mencoba	menjalankan	Tizen	Emulator	untuk	pertama	kali.
Klik	tombol	Allow	access	untuk	menjalankan	emulator.
Panduan	Dasar	Pemrograman	Tizen
36Mengenal	Tizen	Emulator
Tunggu	beberapa	saat.	Tizen	emulator	akan	menampilkan	splashscreen	saat	sebagai
pertanda	bahwa	emulator	sedang	memuat	resource	yang	dibutuhkan	untuk	menjalankan
Tizen	OS	pada	emulator.
Berikut	tampilan	lockscreen	Tizen	OS	yang	berjalan	diatas	Tizen	Emulator.
Panduan	Dasar	Pemrograman	Tizen
37Mengenal	Tizen	Emulator
Geser	pada	layar	Tizen	Emulator	dengan	menggunakan	Mouse	untuk	melihat	isi	dari	Tizen
OS.	Berikut	beberapa	tampilan	dari	Tizen	OS.
Panduan	Dasar	Pemrograman	Tizen
38Mengenal	Tizen	Emulator
Layaknya	sebuah	smartphone,	Tizen	Emulator	ini	dilengkapi	dengan	tombol	menu,	home,
back,	power	dan	juga	volume.
Panduan	Dasar	Pemrograman	Tizen
39Mengenal	Tizen	Emulator
Hello	Tizen
Sesi	ini	menjelaskan	bagaimana	cara	membuat	aplikasi	Tizen	sederhana	yaitu	Hello	World.
Tutorial	ini	membantu	kita	mengenali	proses	pembuatan	aplikasi	Tizen	secara	Native	(Tizen
Native	Application),	menggunakan	Tizen	SDK	dan	instalasi	aplikasi	yang	telah	dibuat	pada
emulator	atau	pada	Tizen	Device.
Saat	kita	membuat	aplikasi	yang	rumit,	kita	dapat	menggunakan	tools	yang	telah	disertakan
pada	Tizen	SDK	untuk	memudahkan	proses	pembuatan	fitur	serta	desain	antarmuka
aplikasi	(User	Interface).
Berikut	langkah-langkah	yang	diperlukan	untuk	membuat	aplikasi	Tizen	sederhana	"Hello
World".
Membuat	Proyek	Baru
Untuk	membuat	proyek	baru,	jalankan	aplikasi	Tizen	IDE.
Pada	Tizen	IDE,	pilih	menu	File	>	New	>	Project...
Panduan	Dasar	Pemrograman	Tizen
40Hello	World	Tizen
Pilih	Tizen	Native	Project	sebagai	tipe	proyek.	Kemudian	klik	tombol	Next.
Pilih	Basic	UI	sebagai	template	project.	Berikan	nama	untuk	Project	name	dan	Package
name.	Pilih	mobile	sebagai	Profile.	Gunakan	versi	2.4	sebagai	Version	dari	aplikasi	Tizen
yang	akan	dibuat.	Klik	tombol	Finish	untuk	mengkonfirmasi	pembuatan	proyek	Tizen	baru.
Panduan	Dasar	Pemrograman	Tizen
41Hello	World	Tizen
Apabila	proses	pembuatan	project	baru	sudah	selesai,	kita	akan	mendapatkan	kode
program	sesuai	dengan	template	yang	dipakai.
Proyek	baru	HelloWorld	telah	terlihat	di	Project	Explorer	pada	Tizen	IDE.	Pada	project
explorer,	terdapat	file	konfigurasi	project	bernama	tizen-manifest.xml	dan	beberapa	file
kode	program	lain	nya	seperti:
Panduan	Dasar	Pemrograman	Tizen
42Hello	World	Tizen
folder	inc	:	direktori	header	file	untuk	aplikasi
folder	src	:	direktori	C	file	untuk	implementasi	kode	program
Konfigurasi	Aplikasi
Untuk	konfigurasi	aplikasi,	ada	dua	hal	yang	bisa	dilakukan:
Mengubah	project	properties	dengan	memodifikasi	file	tizen-manifest.xml.Berikut
merupakan	isi	dari	tizen-manifest.xml.
Implementasi	kode	untuk	aplikasi	pada	helloworld.c
Saat	membuat	kode	program	untuk	aplikasi	Tizen,	harap	diingat	bahwa	Tizen	API	mengikuti
beberapa	prinsip	dasar	berikut	ini:
Ownership	of	returned	strings
Semua	variabel	dengan	tipe	data	string	yang	di-return	sebagai	pointer	harus	dihapus
oleh	caller	kecuali	dibutuhkan	oleh	bagian	program	lain.
Tidak	menghapus	string	pada	memori	dapat	menyebabkan	memory	leaks.	Sistem
memori	yang	tidak	cukup	dapat	memicu	notifikasi	'system	low	memory',	sebuah
notifikasi	yang	memberikan	informasi	bahwa	memori	pada	sistem	tidak	cukup	untuk
Panduan	Dasar	Pemrograman	Tizen
43Hello	World	Tizen
menjalankan	operasi	pada	aplikasi.	Sistem	operasi	Tizen	menggunakan	algoritma
heuristic	untuk	memilih	dan	menghentikan	aplikasi	yang	menggunakan	banyak	memori
karena	penggunaan	memori	yang	besar	dapat	menyebabkan	sistem	operasi	menjadi
tidak	stabil.
char	*app_id_string	=	NULL;
if	(!app_get_id(&app_id_string))
{
		//	Use	app_id_string
		if	(app_id_string	!=	NULL)
						free(app_id_string);
}
Handle
Sebuah	handle	menyediakan	sarana	untuk	mengelola	sebuah	instance	yang
terasosiasi	dengan	handle.	Handle	digunakan	sangat	banyak	pada	Tizen	Native	API
untuk	alasan	kompatibilitas.	Pembuatan	(creation)	dan	penghancuran	(destruction)
fungsi	disediakan	untuk	setiap	tipe	handle.	Fungsi	tidak	membuat	dan	menghancurkan
handle	dengan	sendiri	nya,	tetapi	mengasosiasikan	pada	instance	yang	terasosiasi
dengan	handle	yang	diberikan.	Ini	berarti,	handle	tidak	valid	sampai	fungsi	yang	dibuat
telah	dipanggil.	Accessor	fungsi	(getters/setters)	juga	disediakan	untuk	mengakses
members	valriable	dari	struktur	tersembunyi	yang	diidentifikasi	oleh	handle	yang
diberikan.
//	Text	message	direpresentasikan	oleh	handle
messages_message_h	sms_msg;
//	Buat	message	dan	asosiasikan	dengan	handle
messages_create_message(MESSAGES_TYPE_SMS,	&sms_msg);
//	hapus	message
messages_destroy_message(sms_msg);
//	Mengubah	properti	dari	text	message
messages_set_text(sms_msg,	"Hello,	how	are	you?");	
messages_add_address(sms_msg,	"01020157919",	MESSAGE_RECIPIENT_TO);
Pemanggilan	fungsi	Asynchronous
Beberapa	fungsi	pada	Tizen	Native	API	adalah	asynchronous.	Sebuah	fungsi
asynchronous	mulai	mengeksekusi	proses	dan	return/kembali	sebelum	proses	selesai
dijalankan.	Pada	kasus	ini,	perlu	dibuat	suatu	notifikasi	kepada	caller	saat	fungsi
asynchronous	telah	menyelesaikan	semua	proses	nya.
Panduan	Dasar	Pemrograman	Tizen
44Hello	World	Tizen
Code	assist
Tizen	IDE	menyediakan	fitur	API	assist	dan	API	hover	features	untuk	membuat	kode
program	pada	editor	semakin	cepat	dan	efisien.
Saat	mengubah	kode	program,	tekan	tombol	CTRL+SPACE	untuk	melihat	ketersediaan
API	yang	dapat	digunakan.
Membuat	User	Interface	dengan	EFL
EFL	adalah	singkatan	dari	Enlightenment	Foundation	Library,	kumpulan	toolkit	grafis	yang
digunakan	untuk	membuat	aplikasi	Tizen.	Berikut	langkah-langkah	yang	dilakukan	untuk
membuat	user	interface	untuk	aplikasi	tizen	dengan	menggunakan	EFL.
1.	 Menambahkan	User	Interface
Untuk	menambahkan	user	interface	kedalam	aplikasi,	perlu	diketahui	container	dan
component	yang	diperlukan.	Pada	tutorial	ini	ada	beberapa	container	dan	component
yang	digunakan.
Sebuah	window	untuk	menyimpan	semua	container	dan	component	diatasnya
Panduan	Dasar	Pemrograman	Tizen
45Hello	World	Tizen
Sebuah	conformant,	yang	menampilkan	keyboard	virtual
Sebuah	naviframe	untuk	menampilkan	beberapa	screen/tampilan	diatasnya
beserta	transisi	antar	screen/tampilan.
Sebuah	box	horizontal	yang	berisi	sebuah	label	dengan	beberapa	baris	teks	dan
sebuah	button.
2.	 Menambahkan	Application	Skeleton	dengan	Appcore
Sebuah	pointer	untuk	objek	yang	penting,	baik	objek	control	(container	atau
component)	ataupun	objek	data	dalam	aplikasi	disimpan	pada	struktur	data	berikut.
typedef	struct	appdata	
{
					Evas_Object	*win;
					Evas_Object	*conform;
					Evas_Object	*naviframe;
}	appdata_s;
Struktur	data	diatas	didesain	sebagai	pointer	untuk	menyimpan	alamat	memori	untuk
objek-objek	yang	akan	digunakan	pada	aplikasi.	Dari	struktur	data	diatas	dapat
diketahui	bahwa	semua	container	dan	component	pada	aplikasi	Tizen	bertipe
Evas_Object.
*win
Digunakan	untuk	menyimpan	alamat	memori	dari	objek	window	yang	dibuat
*conform
Digunakan	untuk	menyimpan	alamat	memori	dari	objek	conformant	yang	dibuat
*naviframe
Digunakan	untuk	menyimpan	alamat	memori	dari	objek	naviframe	yang	dibuat
Pointer	untuk	struktur	data	diatas	dibuat	dan	diinisialisasi	hanya	dengan	nilai	0	(nol)
pada	fungsi	main().	Cara	yang	sama	juga	digunakan	untuk	membuat	dan
menginisialisasi	struktur	data	dengan	tipe	app_event_callback_s,	yang	menyimpan
fungsi-fungsi	callbacks	dari	core	aplikasi	(app-core).
Panduan	Dasar	Pemrograman	Tizen
46Hello	World	Tizen
static	bool
app_create(void	*data)
{
					appdata_s	*ad	=	data;
					create_base_gui(ad);
					return	true;
}
	int
	main(int	argc,	char	*argv[])
	{
							appdata_s	ad	=	{0,};
							int	ret	=	0;
							ui_app_lifecycle_callback_s	event_callback	=	{0,};
							app_event_handler_h	handlers[5]	=	{NULL,	};
							event_callback.create	=	app_create;
							event_callback.terminate	=	app_terminate;
							event_callback.pause	=	app_pause;
							event_callback.resume	=	app_resume;
							event_callback.app_control	=	app_control;
							ui_app_add_event_handler(&handlers[APP_EVENT_LOW_BATTERY],	APP_EVENT_LOW_BATTERY,	ui_app_l
							ui_app_add_event_handler(&handlers[APP_EVENT_LOW_MEMORY],	APP_EVENT_LOW_MEMORY,	ui_app_low
							ui_app_add_event_handler(&handlers[APP_EVENT_DEVICE_ORIENTATION_CHANGED],	APP_EVENT_DEVICE
							ui_app_add_event_handler(&handlers[APP_EVENT_LANGUAGE_CHANGED],	APP_EVENT_LANGUAGE_CHANGED
							ui_app_add_event_handler(&handlers[APP_EVENT_REGION_FORMAT_CHANGED],	APP_EVENT_REGION_FORM
							ret	=	ui_app_main(argc,	argv,	&event_callback,	&ad);
							if	(ret	!=	APP_ERROR_NONE)	
							{
											dlog_print(DLOG_ERROR,	LOG_TAG,	"app_main()	is	failed.	err	=	%d",	ret);
							}
							return	ret;
	}
Catatan:
Untuk	informasi	lainnya	tentang	Appcore,	buka	Handling	the	Application
Fundamentals	pada	link	https://developer.tizen.org/development/tutorials/native-
application/application-framework/application#fundamentals.
3.	 Membuat	objek	GUI
Panduan	Dasar	Pemrograman	Tizen
47Hello	World	Tizen
GUI	(Graphical	User	Interface)	dibuat	pada	fungsi	create_base_gui().	Fungsi	tersebut
menerima	sebuah	pointer	dengan	nama	ad	untuk	diisi	dengan	objek-objek	dengan	tipe
yang	sesuai	dengan	tipe-tipe	yang	telah	dideklarasikan	pada	struktur	data	appdata_s.
Buat	fungsi	create_base_gui()	sebagai	fungsi	static	karena	fungsi	ini	hanya	dapat
dicapai	dari	unit	kompilasi	saat	ini	(yang	memungkinkan	compiler	untuk	menghasilkan
lebih	cepat	dan	ukuran	kode	program	lebih	kecil).
Didalam	fungsi	create_base_gui(),	buat	objek	window	dan	buat	"Hello	World"	sebagai
nama	dan	title	dari	window.	Tambahkan	sebuah	callback	pada	event	"delete,request".
Callback	untuk	event	"delete,request"	ini	akan	dieksekusi	saat	objek	window	akan
ditutup	oleh	sistem.
static	void
create_base_gui(appdata_s	*ad)
{
					//	buat	objek	window	
					//	simpan	objek	window	yang	dibuat	kedalam	pointer	ad->win
					ad->win	=	elm_win_util_standard_add(PACKAGE,	PACKAGE);
					elm_win_autodel_set(ad->win,	EINA_TRUE);
					//	tambahkan	jenis	rotasi	yang	akan	didukung	pada	aplikasi
					if	(elm_win_wm_rotation_supported_get(ad->win))	
					{
									int	rots[4]	=	{	0,	90,	180,	270	};
									elm_win_wm_rotation_available_rotations_set(ad->win,	(const	int	*)(&rots),	4
					}
					//	tambahkan	callback	untuk	event	"delete,request".
					//	callback	ini	akan	dieksekusi	saat	sistem	akan	menutup	objek	window
					evas_object_smart_callback_add(ad->win,	"delete,request",	win_delete_request_cb,	
					//	tambahkan	callback	untuk	event	"back	key"
					//	callback	ini	akan	dieksekusi	saat	user	menekan	tombol	'back'
					eext_object_event_callback_add(ad->win,	EEXT_CALLBACK_BACK,	win_back_cb,	ad);
Selanjutnya	kita	akan	membuat	objek	conformant	dan	meletakkannya	didalam	objek
window.	Mulai	saat	ini,	baik	container	dan	component	akan	diletakkan	didalam
conformant.
Panduan	Dasar	Pemrograman	Tizen
48Hello	World	Tizen
//	buat	objek	conformant	
					//	dan	jadikan	window	sebagai	parent	dari	conformant	
					//	simpan	object	conformant	yang	dibuat	kedalam	pointer	ad->conform
					ad->conform	=	elm_conformant_add(ad->win);
					//	buat	conformant	agar	bisa	menampilkan	phone	indicator
					elm_win_indicator_mode_set(ad->win,	ELM_WIN_INDICATOR_SHOW);
					elm_win_indicator_opacity_set(ad->win,	ELM_WIN_INDICATOR_OPAQUE);
					//	buat	agar	objek	conformant	menempati	semua	space	yang	ada	secara	vertical	dan	horizontal
					evas_object_size_hint_weight_set(ad->conform,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
					//	buat	conformant	sebagai	resize	object	dari	window
					//	ukuran	conformant	akan	berubah	bersamaan	dengan	ukuran	window
					elm_win_resize_object_add(ad->win,	ad->conform);
					//	tampilkan	objek	conformant
					//	karena	semua	UI	container	dan	component	secara	default	adalah	hidden/collapsed	(tersembun
					evas_object_show(ad->conform);
Selanjutkan	kita	akan	menambahkan	object	naviframe	kedalam	conformant.	Naviframe
adalah	container	sangat	berguna	untuk	aplikasi	agar	dapat	menampilkan	beberapa
screen/tampilan	secara	bergantian.	Naviframe	memungkinkan	untuk	menampilkan	satu
screen,	menganti	ke	screen	lain	nya,	kembali	menampilakan	lagi	screen	pertama,	dan
bisa	melakukan	transisi	dengan	beberapa	screen	lain	nya.
Pada	tutorial	ini,	hanya	akan	ada	satu	screen	yang	dibuat.	Naviframe	akan	dibuat	dan
diletakkan	didalam	conformant.
					//	buat	objek	naviframe,	dan	jadikan	conformant	sebagai	parent	dari	naviframe
					ad->naviframe	=	elm_naviframe_add(ad->conform);
					//	jadikan	naviframe	sebagai	content	dari	conformant
					elm_object_content_set(ad->conform,	ad->naviframe);
					//	tampilkan	naviframe
					evas_object_show(ad->conform);
Selanjutnya	kita	akan	menambahkan	container	box,	yang	dapat	menampung
component	atau	container	lainnya	secara	vertical	maupun	horizontal.	Box	adalah
container	yang	serupa	dengan	LinearLayout	pada	Android	dan	StackPanel	pada
Windows	Phone.	Pada	tutorial	ini,	satu	container	box	akan	diletakkan	didalam
naviframe.
Panduan	Dasar	Pemrograman	Tizen
49Hello	World	Tizen
//	buat	objek	box	dan	jadikan	naviframe	sebagai	parent	nya
					Evas_Object	*box	=	elm_box_add(ad->naviframe);
					//	set	objek	box	agar	menampilan	element	didalamnya	secara	vertical
					elm_box_horizontal_set(box,	EINA_FALSE);
					//	buat	agar	box	merentang	saat	content	nya	membutuhkan	lebih	banyak	space
					evas_object_size_hint_weight_set(box,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
					//	buat	box	agar	mengisi	space	yang	ada	pada	parent
					evas_object_size_hint_align_set(box,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
					//	tambahkan	box	sebagai	container	pada	naviframe
					elm_naviframe_item_push(ad->naviframe,	"Hello	World",	NULL,	NULL,	box,	NULL);
					//	tampilkan	objek	box
					evas_object_show(box);
Selanjutnya	kita	akan	menambahkan	satu	objek	label	yang	dapat	menampilkan	teks
dalam	beberapa	baris	dengan	format	menggunakan	tag	HTML.
					//	buat	objek	label	dan	jadikan	box	sebagai	parent	dari	label
					Evas_Object*	label	=	elm_label_add(box);
					//	Set	teks	untuk	label	dan	set	format	yang	digunakan	dengan	tag	HTML:
					//	-	teks	"Hello	World!"	diletakkan	ditengah	pada	baris	pertama
					//	-	tambahkan	satu	baris	kosong	(tag	<br>)
					//	-	Tambahkan	teks	yang	lebih	panjang	yang	tidak	cukup	untuk	satu	baris,
					//			teks	akan	di	wrap	ke	baris	berikutnya
					elm_object_text_set(label,
									"<align=center>Hello	World!</align><br>"
																	"<br>"
																	"<wrap	=	word>Clicking	on	the	button	below	closes	the	application.</wrap>"
					//	set	agar	label	dapat	merentang	saat
					//	content	nya	membutuhkan	lebih	banyak	space
	evas_object_size_hint_weight_set(label,	EVAS_HINT_EXPAND,
	EVAS_HINT_EXPAND);
					//	set	agar	box	mengisi	space	yang	tersedia	pada	horizontal	axis	dan
					//	terletak	ditengah	secara	vertical	(diletakkan	di	0.5	secara	vertical,
					//	atau	diletakkan	ditengah	secara	vertical
					evas_object_size_hint_align_set(label,	EVAS_HINT_FILL,	0.5);
					//	tambahkan	label	sebagai	element	dari	box
					elm_box_pack_end(box,	label);
					//	tampilkan	objek	label
					evas_object_show(label);
Panduan	Dasar	Pemrograman	Tizen
50Hello	World	Tizen
UI	component	terakhir	yang	akan	ditambahkan	adalah	Button.	Button	ini	akan
membuat	keluar	dari	aplikasi	saat	ditekan.
					//	buat	objek	button	dan	jadikan	box	sebagai	parent
					Evas_Object	*button	=	elm_button_add(box);
					//	button	akan	merentang	saat	content	nya	membutuhkan	lebih	banyak	space
					evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,
									EVAS_HINT_EXPAND);
					//	set	agar	button	mengisi	space	yang	tersedia	pada	horizontal	axis	dan
					//	terletak	diakhir	secara	vertical	(1	berarti	button	diletakkan
					//	diakhir	box	secara	vertical,
					//	koordinat	mulai	pada	(0,	0)	dipojok	kiri	atas
					evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	1);
					//	set	teks	'Close!'	sebagai	content	dari	button
					elm_object_text_set(button,	"Close!");
					//	Tambahkan	sebuah	callback	pada	button	untuk	event	"clicked";
					//	fungsi	callback	bernama	clicked_cb
					evas_object_smart_callback_add(button,	"clicked",	clicked_cb,	NULL);
					//	tambahkan	button	sebagai	element	dari	box;	karena	koordinat	dimulai	dari	pojok	kiri	atas,
					//	dan	box	adalah	vertical,	button	akan	berada	dibawah	label
					elm_box_pack_end(box,	button);
					//	tampilkan	objek	button
					evas_object_show(button);
Selanjutnya	kita	akan	membuat	window	menampilkan	semua	container	dan	component
diatasnya	pada	screen.
					/*	Tampilkan	window	setelah	semua	base	gui	dibuat	*/
					evas_object_show(ad->win);
}
4.	 Keluar	dari	Aplikasi	(GUI)
Fungsi	callback	clicked_cb()	harus	dibuat	agar	kita	bisa	menghentikan/keluar	dari
aplikasi	saat	button	ditekan.	Fungsi	callback	untuk	button	diberikan	melaui	perintah
evas_object_smart_callback_add().	Letakkan	fungsi	clicked_cb()	diatas	fungsi
create_base_gui()	karena	bahasa	pemrograman	C	tidak	dapat	memanggil	fungsi	yang
dideklarasikan	setelah/dibawah	fungsi	pemanggil	nya.
Panduan	Dasar	Pemrograman	Tizen
51Hello	World	Tizen
Penjelasan	lebih	detail	tentang	callbacks	dapat	melihat	halaman	Evas	Smart	Object
Events	guide	pada	link	https://developer.tizen.org/development/ui-practices/native-
application/efl/event-handling/event-types#evas_smart_object.
Berikut	merupakan	implementasi	dari	fungsi	callback	clicked_cb().
static	void	clicked_cb(void	*user_data,	Evas_Object	*obj,	void	*event_info)
{
					//	menghentikan/keluar	dari	aplikasi
					elm_exit();
}
Building	and	Packaging	the	Application
Setelah	semua	kode	program	untuk	aplikasi	selesai	diimplementasi	dan	sebelum
menjalankan	aplikasi,	kita	harus	melakukan	kompilasi	pada	kode	project	kita	dengan	cara
klik	kanan	pada	folder	project	di	Project	Explorer,	kemudian	build	project.	Tunggu
beberapa	saat	dan	pastikan	tidak	ada	error	pada	kode	program	yang	kita	buat.	
Menjalankan	Aplikasi
Kita	dapat	menjalankan	aplikasi	yang	telah	kita	buat	pada	emulator	ataupun	pada	Tizen
Device	seperti	Smartphone,	Wearable	(Smart	Watch),	ataupun	Smart	TV.
Signing	Application
Panduan	Dasar	Pemrograman	Tizen
52Hello	World	Tizen
Sebelum	kita	menjalankan	aplikasi,	kita	harus	melakukan	sign	pada	aplikasi	yang	kita	buat
dengan	meng-generate	author	certificate	dan	mendaftarkan	nya	pada	Tizen	IDE.
Jika	kita	telah	memiliki	sertifikat	yang	teregistrasi	didalam	Tizen	IDE,	proses	sign	aplikasi
akan	dilakukan	secara	otomatis	saat	menjalankan	aplikasi.
Berikut	tahapan	membuat	sertifikat	untuk	aplikasi	Tizen.
1.	 Buka	pengaturan	Security	Profiles	melalui	menu	Window	->	Preferences	>	Tizen
SDK	>	Security	Profiles.	
Panduan	Dasar	Pemrograman	Tizen
53Hello	World	Tizen
2.	 Kemudian	klik	tombol	Add	untuk	menambahkan	profile	
3.	 Masukkan	Profile	Name,	kemudian	klik	tombol	OK.	
4.	 Setelah	profile	selesai	dibuat,	klik	Generate	untuk	membuat	Auhtor	Certificate.
Kemudian	isi	semua	field	yang	dibutuhkan	pada	dialog	Certificate	Generator.
Kemudian	klik	tombol	OK	untuk	membuat	certificate.	
Panduan	Dasar	Pemrograman	Tizen
54Hello	World	Tizen
5.	 Klik	Yes	pada	kotak	dialog	yang	muncul.	
Panduan	Dasar	Pemrograman	Tizen
55Hello	World	Tizen
6.	 Proses	pembuatan	profile	dan	author	certificate	telah	selesai.	Kemudian	klik	tombol
Apply	untuk	menggunakan	nya.	
7.	 Klik	tombol	OK	untuk	mengaktifkan	security	profile	dan	author	certificate	yang	telah
dibuat.	Kemudian	lakukan	clean	project	dengan	cara	klik	kanan	pada	folder	utama
project.	
Panduan	Dasar	Pemrograman	Tizen
56Hello	World	Tizen
8.	 Setelah	clean	project,	maka	proses	pembuatan	dan	pengaktifan	security	profiles	dan
author	certificate	telah	selesai.	
Menjalankan	Aplikasi	pada	Tizen	Emulator
Untuk	menjalankan	aplikasi	pada	Tizen	Emulator,	klik	kanan	pada	folder	utama	project,
kemudian	pilih	Run	As	>	Tizen	Native	Application.
Kemudian	kotak	dialog	untuk	Tizen	emulator	akan	muncul.	Jika	sudah	pernah	membuat
tizen	emulator,	maka	pilih	tizen	emulator	yang	pernah	dibuat,	lalu	klik	Launch.
Panduan	Dasar	Pemrograman	Tizen
57Hello	World	Tizen
Klik	Allow	access	jika	muncul	Firewall	Exception.
Tunggu	beberapa	saat	hingga	Tizen	OS	dimuat	dalam	emulator	dan	emulator	siap	untuk
digunakan.	Berikut	tampilan	dari	kode	program	yang	telah	kita	buat.
Panduan	Dasar	Pemrograman	Tizen
58Hello	World	Tizen
Jalankan	Program	ke	Tizen	Device
Berikut	merupakan	langkah-langkah	untuk	menjalankan	Aplikasi	Tizen	pada	Tizen	Device.
1.	 Hubungkan	Smartphone	Tizen	ke	komputer	dengan	kabel	USB.
Panduan	Dasar	Pemrograman	Tizen
59Hello	World	Tizen
2.	 Smartphone	Tizen	yang	dihubungkan	ke	komputer	akan	terdeteksi	pada	Connection
Explorer	di	Tizen	IDE.	 	Pada	gambar
diatas,	Samsung	Z1	telah	terdeteksi	terhubung	dengan	komputer.
3.	 Pilih	Smartphone	Tizen	yang	terhubung	ke	komputer	pada	Connection	Explorer.
4.	 Pada	Project	Explorer,	klik	kanan	pada	folder	project,	dan	pilih	Run	As	>	Tizen	Native
Application.	Sebagai	alternatif,	untuk	menjalankan	aplikasi	pada	Smartphone	Tizen,
tekan	tombol	Play	pada	toolbar	atau	tekan	Ctrl+F11	pada	keyboard.	Tunggu	beberapa
saat,	maka	aplikasi	akan	berjalan	pada	Smartphone	Tizen.	
Panduan	Dasar	Pemrograman	Tizen
60Hello	World	Tizen
Debugging	Aplikasi
Bagi	pembaca	yang	sudah	pernah	memiliki	pengalaman	menggunakan	IDE	Eclipse	maka
proses	debugging	pada	Tizen	IDE	akan	memiliki	pengalaman	yang	sama.
Panduan	Dasar	Pemrograman	Tizen
61Hello	World	Tizen
Cukup	klik	kanan	pada	kode	program	yang	akan	dianalisa	dan	nanti	akan	keluar	menu,	pilih
Add	BreakPoint.	
Kemudian	akan	ada	bulatan	warna	biru	disamping	kode	program	yang	akan	kita	lakukan
debugging.	
Panduan	Dasar	Pemrograman	Tizen
62Hello	World	Tizen
Sekarang	kita	melakukan	debugging	dengan	cara	klik	kanan	pada	folder	utama	project	dan
pilih	menu	Debug	As	>	Tizen	Native	Application	-	Attach.	
Check	atau	centang	pada	checkbox	Remember	my	decision,	kemudian	klik	tombol	Yes.	
Panduan	Dasar	Pemrograman	Tizen
63Hello	World	Tizen
Kemudian	Tizen	Debugger	akan	berjalan.	
Proses	debugging	akan	berhenti	pada	setiap	breakpoint	yang	telah	kita	tentukan/buat.	
Panduan	Dasar	Pemrograman	Tizen
64Hello	World	Tizen
Klik	tombol	ikon	merah	(stop)	untuk	mengakhiri	proses	debugging.	
Klik	Tizen	Native	pada	bagian	kanan	atas	untuk	kembali	ke	mode	code	editor.
Ok,	cukup	mudah	bukan	proses	debugging	nya?
Panduan	Dasar	Pemrograman	Tizen
65Hello	World	Tizen
Project	Tizen	Pertamaku:	Kalkulator
Sederhana
Pada	sesi	ini	kita	akan	membuat	aplikasi	Tizen	sederhana	yaitu	kalkulator	dengan
menggunakan	Tizen	Native	Application.
Tujuan
Tujuan	dari	pembuatan	project	kalkulator	sederhana	ini	adalah	untuk	belajar	bagaimana
memanfaatkan	komponen-kompunen	UI	standard	yang	disediakan	oleh	Tizen	SDK	seperti
label,	grid,	button	dan	component	lainnya.
Membuat	Proyek	Baru
Untuk	memulai	membuat	kalkulator,	buat	project	baru	melalui	menu	File	->	New	->	Tizen
Native	Project.	Pilih	template	Basic	UI	pada	kategori	MOBILE.	Beri	nama	project	dan
package	name,	misalkan	MyCalculator.
Klik	tombol	Finish	untuk	menyelesaikan	pembuatan	project	baru.
Setelah	proses	pemnbuatan	project	baru	selesai,	akan	ada	dua	file	yaitu	header	file	dengan
ekstensi	.h	dan	c	file	dengan	ekstensi	.c.	Dengan	nama	project	MyCalculator	maka	akan
dihasilkan	file	mycalculator.h	dan	mycalculator.c.
Panduan	Dasar	Pemrograman	Tizen
66Proyek	Tizen	Pertamaku
Membuat	Tampilan	(UI)	Tizen
Pada	pembuatan	UI	untuk	aplikasi	kalkulator,	kita	akan	menggunakan	EFL	(Enlightenment
Foundation	Library)	sebagai	Native	UI	yang	disediakan	oleh	Tizen	SDK.	Semua	komponen
untuk	UI	akan	dibuat	pada	file	mycalculator.c	.
Berikut	merupakan	hasil	akhir	dari	aplikasi	kalkulator	yang	akan	kita	buat.
Berikut	merupakan	proses	pembuatan	aplikasi	Kalkulator.
Membuat	Program	Tizen
Buka	file	mycalculator.c.	Ubah	struct	appdata	yang	semula.
Panduan	Dasar	Pemrograman	Tizen
67Proyek	Tizen	Pertamaku
typedef	struct	appdata	
{
				Evas_Object	*win;
				Evas_Object	*conform;
				Evas_Object	*label;
}	appdata_s;
Menjadi.
typedef	struct	appdata	
{
				const	char	*name;
				Evas_Object	*win;
				Evas_Object	*bg;
				Evas_Object	*conform;
				Evas_Object	*entry;
				Evas_Object	*basic_content;
				Evas_Object	*advanced_content;
}	appdata_s;
Selanjutnya	kita	membuat	fungsi	untuk	membuat	beberapa	komponen	UI	seperti	beberapa
tombol	pada	kalkulator	seperti	tombol	0,1,2...9	dan	tombol	+,	-,	/	sejenisnya.
static	Evas_Object	*
create_bg(Evas_Object	*parent)
{
				Evas_Object	*bg;
				if	(parent	==	NULL)	return	NULL;
				bg	=	elm_bg_add(parent);
				evas_object_size_hint_weight_set(bg,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				elm_win_resize_object_add(parent,	bg);
				evas_object_show(bg);
				return	bg;
}
static	Evas_Object	*
create_conform(Evas_Object	*parent)
{
				Evas_Object	*conform,	*bg;
				if	(parent	==	NULL)	return	NULL;
				conform	=	elm_conformant_add(parent);
				evas_object_size_hint_weight_set(conform,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				elm_win_resize_object_add(parent,	conform);
Panduan	Dasar	Pemrograman	Tizen
68Proyek	Tizen	Pertamaku
bg	=	elm_bg_add(conform);
				elm_object_style_set(bg,	"indicator/headerbg");
				elm_object_part_content_set(conform,	"elm.swallow.indicator_bg",	bg);
				evas_object_show(bg);
				evas_object_show(conform);
				return	conform;
}
static	void
rotation_cb(void	*data,	Evas_Object	*obj,	void	*event_info)
{
				appdata_s	*ad	=	data;
				int	current_degree	=	elm_win_rotation_get(obj);
				if	(current_degree	!=	0	&&	current_degree	!=	180)	{
								elm_grid_pack_set(ad->basic_content,	45,	3,	52,	94);
								elm_grid_pack_set(ad->advanced_content,	3,	3,	36,	94);
				}	else	{
								elm_grid_pack_set(ad->basic_content,	3,	3,	94,	94);
								elm_grid_pack_set(ad->advanced_content,	-100,	-100,	94,	94);
				}
}
static	void
clicked_0_cb(void	*data,	Evas_Object	*obj	EINA_UNUSED,	void	*event_info	EINA_UNUSED)
{
			Evas_Object	*entry	=	data;
			elm_entry_entry_append(entry,	"<font_size=50>0</font_size>");
}
static	void
clicked_1_cb(void	*data,	Evas_Object	*obj	EINA_UNUSED,	void	*event_info	EINA_UNUSED)
{
			Evas_Object	*entry	=	data;
			elm_entry_entry_append(entry,	"<font_size=50>1</font_size>");
}
static	void
clicked_2_cb(void	*data,	Evas_Object	*obj	EINA_UNUSED,	void	*event_info	EINA_UNUSED)
{
			Evas_Object	*entry	=	data;
			elm_entry_entry_append(entry,	"<font_size=50>2</font_size>");
}
static	void
clicked_3_cb(void	*data,	Evas_Object	*obj	EINA_UNUSED,	void	*event_info	EINA_UNUSED)
{
			Evas_Object	*entry	=	data;
			elm_entry_entry_append(entry,	"<font_size=50>3</font_size>");
}
static	void
Panduan	Dasar	Pemrograman	Tizen
69Proyek	Tizen	Pertamaku
clicked_4_cb(void	*data,	Evas_Object	*obj	EINA_UNUSED,	void	*event_info	EINA_UNUSED)
{
			Evas_Object	*entry	=	data;
			elm_entry_entry_append(entry,	"<font_size=50>4</font_size>");
}
static	void
clicked_5_cb(void	*data,	Evas_Object	*obj	EINA_UNUSED,	void	*event_info	EINA_UNUSED)
{
			Evas_Object	*entry	=	data;
			elm_entry_entry_append(entry,	"<font_size=50>5</font_size>");
}
static	void
clicked_6_cb(void	*data,	Evas_Object	*obj	EINA_UNUSED,	void	*event_info	EINA_UNUSED)
{
			Evas_Object	*entry	=	data;
			elm_entry_entry_append(entry,	"<font_size=50>6</font_size>");
}
static	void
clicked_7_cb(void	*data,	Evas_Object	*obj	EINA_UNUSED,	void	*event_info	EINA_UNUSED)
{
			Evas_Object	*entry	=	data;
			elm_entry_entry_append(entry,	"<font_size=50>7</font_size>");
}
static	void
clicked_8_cb(void	*data,	Evas_Object	*obj	EINA_UNUSED,	void	*event_info	EINA_UNUSED)
{
			Evas_Object	*entry	=	data;
			elm_entry_entry_append(entry,	"<font_size=50>8</font_size>");
}
static	void
clicked_9_cb(void	*data,	Evas_Object	*obj	EINA_UNUSED,	void	*event_info	EINA_UNUSED)
{
			Evas_Object	*entry	=	data;
			elm_entry_entry_append(entry,	"<font_size=50>9</font_size>");
}
static	void
clicked_c_cb(void	*data,	Evas_Object	*obj	EINA_UNUSED,	void	*event_info	EINA_UNUSED)
{
			Evas_Object	*entry	=	data;
			elm_entry_entry_set(entry,	"<align=right>");
}
static	void
clicked_divide_cb(void	*data,	Evas_Object	*obj	EINA_UNUSED,	void	*event_info	EINA_UNUSED)
{
			Evas_Object	*entry	=	data;
			elm_entry_entry_append(entry,	"<font_size=50>/</font_size>");
Panduan	Dasar	Pemrograman	Tizen
70Proyek	Tizen	Pertamaku
}
static	void
clicked_multi_cb(void	*data,	Evas_Object	*obj	EINA_UNUSED,	void	*event_info	EINA_UNUSED)
{
			Evas_Object	*entry	=	data;
			elm_entry_entry_append(entry,	"<font_size=50>X</font_size>");
}
static	void
clicked_plus_cb(void	*data,	Evas_Object	*obj	EINA_UNUSED,	void	*event_info	EINA_UNUSED)
{
			Evas_Object	*entry	=	data;
			elm_entry_entry_append(entry,	"<font_size=50>+</font_size>");
}
static	void
clicked_minus_cb(void	*data,	Evas_Object	*obj	EINA_UNUSED,	void	*event_info	EINA_UNUSED)
{
			Evas_Object	*entry	=	data;
			elm_entry_entry_append(entry,	"<font_size=50>-</font_size>");
}
static	void
clicked_dot_cb(void	*data,	Evas_Object	*obj	EINA_UNUSED,	void	*event_info	EINA_UNUSED)
{
			Evas_Object	*entry	=	data;
			elm_entry_entry_append(entry,	"<font_size=50>.</font_size>");
}
static	Evas_Object	*
create_panel_basic_content(Evas_Object	*parent,	appdata_s	*ad)
{
				Evas_Object	*table,	*button;
				table	=	elm_table_add(parent);
				elm_table_padding_set(table,	10,	10);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>C</font_size>");
				evas_object_smart_callback_add(button,	"clicked",	clicked_c_cb,	ad->entry);
				evas_object_show(button);
				elm_table_pack(table,	button,	0,	0,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>/</font_size>");
				evas_object_smart_callback_add(button,	"clicked",	clicked_divide_cb,	ad->entry);
				evas_object_show(button);
				elm_table_pack(table,	button,	1,	0,	1,	1);
Panduan	Dasar	Pemrograman	Tizen
71Proyek	Tizen	Pertamaku
button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>X</font_size>");
				evas_object_smart_callback_add(button,	"clicked",	clicked_multi_cb,	ad->entry);
				evas_object_show(button);
				elm_table_pack(table,	button,	2,	0,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>Back</font_size>");
				evas_object_show(button);
				elm_table_pack(table,	button,	3,	0,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>7</font_size>");
				evas_object_smart_callback_add(button,	"clicked",	clicked_7_cb,	ad->entry);
				evas_object_show(button);
				elm_table_pack(table,	button,	0,	1,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>8</font_size>");
				evas_object_smart_callback_add(button,	"clicked",	clicked_8_cb,	ad->entry);
				evas_object_show(button);
				elm_table_pack(table,	button,	1,	1,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>9</font_size>");
				evas_object_smart_callback_add(button,	"clicked",	clicked_9_cb,	ad->entry);
				evas_object_show(button);
				elm_table_pack(table,	button,	2,	1,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>-</font_size>");
				evas_object_smart_callback_add(button,	"clicked",	clicked_minus_cb,	ad->entry);
				evas_object_show(button);
				elm_table_pack(table,	button,	3,	1,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>4</font_size>");
				evas_object_smart_callback_add(button,	"clicked",	clicked_4_cb,	ad->entry);
Panduan	Dasar	Pemrograman	Tizen
72Proyek	Tizen	Pertamaku
evas_object_show(button);
				elm_table_pack(table,	button,	0,	2,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>5</font_size>");
				evas_object_smart_callback_add(button,	"clicked",	clicked_5_cb,	ad->entry);
				evas_object_show(button);
				elm_table_pack(table,	button,	1,	2,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>6</font_size>");
				evas_object_smart_callback_add(button,	"clicked",	clicked_6_cb,	ad->entry);
				evas_object_show(button);
				elm_table_pack(table,	button,	2,	2,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>+</font_size>");
				evas_object_smart_callback_add(button,	"clicked",	clicked_plus_cb,	ad->entry);
				evas_object_show(button);
				elm_table_pack(table,	button,	3,	2,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>1</font_size>");
				evas_object_smart_callback_add(button,	"clicked",	clicked_1_cb,	ad->entry);
				evas_object_show(button);
				elm_table_pack(table,	button,	0,	3,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>2</font_size>");
				evas_object_smart_callback_add(button,	"clicked",	clicked_2_cb,	ad->entry);
				evas_object_show(button);
				elm_table_pack(table,	button,	1,	3,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>3</font_size>");
				evas_object_smart_callback_add(button,	"clicked",	clicked_3_cb,	ad->entry);
				evas_object_show(button);
				elm_table_pack(table,	button,	2,	3,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
Panduan	Dasar	Pemrograman	Tizen
73Proyek	Tizen	Pertamaku
evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>(	)</font_size>");
				evas_object_show(button);
				elm_table_pack(table,	button,	3,	3,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>0</font_size>");
				evas_object_smart_callback_add(button,	"clicked",	clicked_0_cb,	ad->entry);
				evas_object_show(button);
				elm_table_pack(table,	button,	0,	4,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>.</font_size>");
				evas_object_smart_callback_add(button,	"clicked",	clicked_dot_cb,	ad->entry);
				evas_object_show(button);
				elm_table_pack(table,	button,	1,	4,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>+/-</font_size>");
				evas_object_show(button);
				elm_table_pack(table,	button,	2,	4,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>=</font_size>");
				evas_object_show(button);
				elm_table_pack(table,	button,	3,	4,	1,	1);
				evas_object_show(table);
				return	table;
}
static	Evas_Object	*
create_panel_advanced_content(Evas_Object	*parent,	appdata_s	*ad)
{
				Evas_Object	*table,	*button;
				table	=	elm_table_add(parent);
				elm_table_padding_set(table,	10,	10);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>x!</font_size>");
				evas_object_show(button);
Panduan	Dasar	Pemrograman	Tizen
74Proyek	Tizen	Pertamaku
elm_table_pack(table,	button,	0,	0,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>sqrt</font_size>");
				evas_object_show(button);
				elm_table_pack(table,	button,	1,	0,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>%</font_size>");
				evas_object_show(button);
				elm_table_pack(table,	button,	2,	0,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>sin</font_size>");
				evas_object_show(button);
				elm_table_pack(table,	button,	0,	1,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>cos</font_size>");
				evas_object_show(button);
				elm_table_pack(table,	button,	1,	1,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>tan</font_size>");
				evas_object_show(button);
				elm_table_pack(table,	button,	2,	1,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>ln</font_size>");
				evas_object_show(button);
				elm_table_pack(table,	button,	0,	2,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>log</font_size>");
				evas_object_show(button);
				elm_table_pack(table,	button,	1,	2,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
Panduan	Dasar	Pemrograman	Tizen
75Proyek	Tizen	Pertamaku
evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>1/x</font_size>");
				evas_object_show(button);
				elm_table_pack(table,	button,	2,	2,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>e^x</font_size>");
				evas_object_show(button);
				elm_table_pack(table,	button,	0,	3,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>X^2</font_size>");
				evas_object_show(button);
				elm_table_pack(table,	button,	1,	3,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>Y^x</font_size>");
				evas_object_show(button);
				elm_table_pack(table,	button,	2,	3,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>|	X	|</font_size>");
				evas_object_show(button);
				elm_table_pack(table,	button,	0,	4,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>PI</font_size>");
				evas_object_show(button);
				elm_table_pack(table,	button,	1,	4,	1,	1);
				button	=	elm_button_add(table);
				evas_object_size_hint_weight_set(button,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(button,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_text_set(button,	"<font_size	=	50>e</font_size>");
				evas_object_show(button);
				elm_table_pack(table,	button,	2,	4,	1,	1);
				evas_object_show(table);
				return	table;
}
static	Evas_Object	*
Panduan	Dasar	Pemrograman	Tizen
76Proyek	Tizen	Pertamaku
create_panel(Evas_Object	*parent,	appdata_s	*ad)
{
				Evas_Object	*panel,	*grid;
				/*	Panel	*/
				panel	=	elm_panel_add(parent);
				elm_panel_orient_set(panel,	ELM_PANEL_ORIENT_BOTTOM);
				evas_object_show(panel);
				/*	Grid	*/
				grid	=	elm_grid_add(panel);
				evas_object_size_hint_weight_set(grid,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(grid,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_content_set(panel,	grid);
				/*	Panel	basic	content	*/
				ad->basic_content	=	create_panel_basic_content(grid,	ad);
				evas_object_size_hint_weight_set(ad->basic_content,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(ad->basic_content,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_grid_pack(grid,	ad->basic_content,	3,	3,	94,	94);
				/*	Panel	advanced	content	*/
				ad->advanced_content	=	create_panel_advanced_content(grid,	ad);
				evas_object_size_hint_weight_set(ad->advanced_content,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(ad->advanced_content,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_grid_pack(grid,	ad->advanced_content,	-100,	-100,	94,	94);
				return	panel;
}
static	Evas_Object	*
create_entry(Evas_Object	*parent)
{
				Evas_Object	*entry;
				entry	=	elm_entry_add(parent);
				elm_entry_editable_set(entry,	EINA_FALSE);
				elm_entry_entry_set(entry,	"<font_size=50><align=right></font_size>");
				evas_object_show(entry);
				return	entry;
}
Kemudian	modifikasi	create_base_gui()	dan	tulis	kode	program	dibawah	ini.
Panduan	Dasar	Pemrograman	Tizen
77Proyek	Tizen	Pertamaku
static	void
create_base_gui(appdata_s	*ad)
{
				Evas_Object	*grid,	*panel;
				ad->win	=	elm_win_util_standard_add(PACKAGE,	PACKAGE);
				elm_win_autodel_set(ad->win,	EINA_TRUE);
				if	(elm_win_wm_rotation_supported_get(ad->win))	{
								int	rots[4]	=	{	0,	90,	180,	270	};
								elm_win_wm_rotation_available_rotations_set(ad->win,	(const	int	*)(&rots),	4);
				}
				evas_object_smart_callback_add(ad->win,	"wm,rotation,changed",	rotation_cb,	ad);
				evas_object_smart_callback_add(ad->win,	"delete,request",	win_delete_request_cb,	NULL
				eext_object_event_callback_add(ad->win,	EEXT_CALLBACK_BACK,	win_back_cb,	ad);
				ad->bg	=	create_bg(ad->win);
				ad->conform	=	create_conform(ad->win);
				elm_win_conformant_set(ad->win,	EINA_TRUE);
				elm_win_indicator_mode_set(ad->win,	ELM_WIN_INDICATOR_SHOW);
				elm_win_indicator_opacity_set(ad->win,	ELM_WIN_INDICATOR_OPAQUE);
				/*	Grid	*/
				grid	=	elm_grid_add(ad->conform);
				evas_object_size_hint_weight_set(grid,	EVAS_HINT_EXPAND,	EVAS_HINT_EXPAND);
				evas_object_size_hint_align_set(grid,	EVAS_HINT_FILL,	EVAS_HINT_FILL);
				elm_object_content_set(ad->conform,	grid);
				/*	Entry	*/
				ad->entry	=	create_entry(grid);
				elm_grid_pack(grid,	ad->entry,	5,	5,	90,	25);
				/*	Panel	*/
				panel	=	create_panel(grid,	ad);
				elm_grid_pack(grid,	panel,	0,	35,	100,	65);
				/*	Show	window	after	base	gui	is	set	up	*/
				evas_object_show(ad->win);
}
Simpan	(save)	semua	kode	program	yang	telah	ditulis	dengan	menekan	Ctrl+s	pada
keyboard.
Menjalankan	Program	Tizen	ke	Emulator
Panduan	Dasar	Pemrograman	Tizen
78Proyek	Tizen	Pertamaku
Untuk	memastikan	kode	program	yang	ditulis	sudah	benar	dan	tidak	ada	kesalahan	lakukan
kompilasi	pada	project	yang	dibuat.	Untuk	melakukan	kompilasi,	klik	kanan	pada	root	folder
project,	kemudian	pilih	Build	Project.
Hasil	kompilasinya	akan	terlihat	pada	Console	di	Tizen	IDE.
Jika	tidak	ada	error,	klik	Run	untuk	menjalankan	aplikasi.	Pada	kotak	dialog	yang	muncul,
pilih	emulator	yang	akan	digunakan	untuk	menjalankan	aplikasi,	kemudian	klik	tombol
Launch	untuk	menjalankan	aplikasi	pada	emulator	yang	dipilih.
Panduan	Dasar	Pemrograman	Tizen
79Proyek	Tizen	Pertamaku
Tunggu	beberapa	saat	untuk	menjalankan	aplikasi	pada	emulator.	Berikut	tampilan	aplikasi
Kalkulator	yang	berjalan	pada	emulator.
Panduan	Dasar	Pemrograman	Tizen
80Proyek	Tizen	Pertamaku
Lakukan	pengujian	dengan	menekan	tombol	yang	ada	pada	kalkulator.
Panduan	Dasar	Pemrograman	Tizen
81Proyek	Tizen	Pertamaku
Menjalankan	Program	Tizen	ke	Smartphone
Tizen
Berikut	merupakan	langkah-langkah	untuk	menjalankan	Aplikasi	Tizen	pada	Smartphone
Tizen.
1.	 Hubungkan	Smartphone	Tizen	ke	komputer	dengan	kabel	USB.
Panduan	Dasar	Pemrograman	Tizen
82Proyek	Tizen	Pertamaku
2.	 Smartphone	Tizen	yang	dihubungkan	ke	komputer	akan	terdeteksi	pada	Connection
Explorer	di	Tizen	IDE.	 	Pada	gambar
diatas,	Samsung	Z1	telah	terdeteksi	terhubung	dengan	komputer.
3.	 Pilih	Smartphone	Tizen	yang	terhubung	ke	komputer	pada	Connection	Explorer.
4.	 Pada	Project	Explorer,	klik	kanan	pada	folder	project,	dan	pilih	Run	As	>	Tizen	Native
Application.	Sebagai	alternatif,	untuk	menjalankan	aplikasi	pada	Smartphone	Tizen,
tekan	tombol	Play	pada	toolbar	atau	tekan	Ctrl+F11	pada	keyboard.	Tunggu	beberapa
saat,	maka	aplikasi	akan	berjalan	pada	Smartphone	Tizen.	
Panduan	Dasar	Pemrograman	Tizen
83Proyek	Tizen	Pertamaku
Panduan	Dasar	Pemrograman	Tizen
84Proyek	Tizen	Pertamaku
Pendahuluan
Pada	sesi	ini	kita	akan	melakukan	instalasi	dan	konfigurasi	guna	membuat	aplikasi	Tizen
diatas	platform	Ubuntu.	Disini	penulis	akan	menggunakan	Ubuntu	14.04.4	LTS	64	bit
sebagai	testingnya.
Panduan	Dasar	Pemrograman	Tizen
85Pemrograman	Tizen	untuk	Platform	Linux
Persiapan	untuk	Instalasi
Berikut	beberapa	hal	yang	perlu	disiapkan	untuk	membuat	dan	menjalankan	aplikasi	Tizen
pada	platform	Ubuntu.
Perangkat	Keras
Berikut	merupakan	perngkat	keras	yang	dibutuhkan	untuk	mempersiapkan	environment
pembuatan	aplikasi	Tizen.
Komponen Minimum Rekomendasi
Kecepatan	Prosesor 2	GHz 3	GHz
Tipe	Prosesor Intel	Dual-Core Intel	Core	i5
Memori	(RAM) 3	GB 4	GB
Kapasitas	Disk	kosong 6	GB 10	GB
Perangkat	Lunak
Sistem	Operasi
Untuk	pengguna	Operating	System	Ubuntu,	instalasi	Tizen	SDK	(Software	Development	Kit)
dapat	dilakukan	melalui	website	resmi	Tizen	Developer	pada
https://developer.tizen.org/development/tools/download.	SDK	ini	telah	mencakup	IDE,
Emulator,	toolchain,	sample	code	dan	juga	dokumentasi.
Pada	halaman	tersebut,	pilihlah	versi	Ubuntu	yang	sesuai	dengan	PC	atau	laptop	anda.	Di
sini	telah	disediakan	installer	untuk	Ubuntu	32	bits	dan	juga	64	bits.	Jika	Anda	tidak
mengetahui	versi	bit	Ubuntu	anda,	anda	bisa	mengikuti	langkah-langkah	berikut:
Buka	terminal	anda
Ketikkan	perintah		Uname	-a	,	diikuti	dengan	karakter	enter
Jika	menggunakan	Ubuntu	32	bit,	maka	output	dari	instruksi	ini	=		i686	GNU/Linux	
Jika	menggunakan	Ubuntu	64	bit,	maka	output	dari	instruksi	ini	=		x86	64	GNU/Linux	
Adapun	Tizen	SDK	yang	dibahas	pada	buku	ini	merupakan	Tizen	2.4	Rev3	SDK	yang
merupakan	SDK	versi	terbaru	untuk	bulan	Februari	2016.	Pada	tampilan	website	Tizen
tersebut,	file	utama	yang	perlu	di-download	adalah	installer	IDE	(Integrated	Development
Panduan	Dasar	Pemrograman	Tizen
86Persiapan	Instalasi
Environment).	Agar	proses	download	bisa	berjalan	lebih	cepat,	Anda	bisa	memilih	mirror
untuk	negara	China.
Java	Runtime	Environment	(JRE)	pada	Ubuntu
Sebelum	melakukan	instalasi	SDK,	perlu	anda	ketahui	bahwa	Tizen	SDK	ini	membutuhkan
Java	Runtime	Environment	(JRE)	agar	bisa	dijalankan	pada	PC	/	laptop	anda.	Oleh	karena
itu,	anda	harus	memastikan	perangkat	anda	telah	dilengkapi	oleh	JRE.	Ini	dapat	dilakukan
dengan	mudah	dengan	mengetikkan	perintah		java		pada	terminal	anda.	Laptop	yang	telah
terinstall	JRE	akan	menampilkan	output	seperti	gambar	di	bawah.	Sebaliknya,	jika	perintah
ini	tidak	dikenal,	terminal	akan	menuliskan	“	No	command	‘java’	found	”.
Instalasi	JRE	bisa	dilakukan	dengan	mengikuti	langkah-langkah	berikut:
Panduan	Dasar	Pemrograman	Tizen
87Persiapan	Instalasi
1.	 Download	installer	JRE	pada	website	Oracle	JRE	7	dengan	link	sebagai	berikut:
http://www.oracle.com/technetwork/java/javase/downloads/jre7-downloads-
1880261.html
2.	 Pilih	installer	yang	sesuai	dengan	versi	Ubuntu	anda.
i.	 Linux	x86	untuk	Ubuntu	32	bit
ii.	 Linux	x64	untuk	Ubuntu	64	bit
3.	 Anda	bisa	memilih	salah	satu	dari	dua	tipe	file	yang	disediakan	(rpm	atau	tar.gz).	Pada
buku	ini	kami	menggunakan	file	tar.gz	untuk	Linux	x64	(	jre-7u79-linux-x64.tar.gz	)
4.	 Setelah	selesai	melakukan	download,	buka	kembali	terminal	anda	dan	ketikkan
perintah-perintah	berikut	pada	lokasi	file	yang	sama	dengan	installer	anda
Untuk	mengekstrak	file	installer
	tar	-xvf	jre-7u79-linux-x64.tar.gz	
Buatlah	sebuah	direktori	khusus	untuk	Java	dan	pindahkan	file	JRE	ke	dalamnya
	sudo	mkdir	-p	/usr/lib/jvm/jre1.7.0	
	sudo	mv	jre1.70_79/*	/usr/lib/jvm/jre1.7.0/	
Install	/	update	java
	sudo	update-alternatives	--install	/usr/bin/java	java
/usr/lib/jvm/jre1.7.0/bin/java	0	
Install	dependencies
	sudo	apt-get	install	expect	
	sudo	apt-get	install	gtk2-engines-pixbuf	
	sudo	apt-get	install	libgnome2-0	
	sudo	apt-get	install	qemu-user-static	
	sudo	apt-get	install	libwebkitgtk-1.0-0	
	sudo	apt-get	install	gettext	
	sudo	apt-get	install	gksudo	
	sudo	apt-get	install	module-init-tools	
	sudo	apt-get	install	libudev-dev	
Panduan	Dasar	Pemrograman	Tizen
88Persiapan	Instalasi
Instalasi	Tizen
Pada	tahap	ini,	anda	telah	siap	untuk	menginstall	Tizen	SDK.	Pada	terminal	anda,	ketikan
perintah	berikut
	chmod	+x	tizen-web-ide_TizenSDK_2.4.0_Rev3_singapore_ubuntu-64.bin	
	./tizen-web-ide_TizenSDK_2.4.0_Rev3_singapore_ubuntu-64.bin	
Pastikan	anda	berada	pada	direktori	di	mana	anda	menyimpan	installer	Tizen	SDK.	Output
dari	command	line	tersebut	akan	memberikan	tampilan	sebagai	berikut:
Untuk	langkah	pertama,	pilih	Accept	sebagai	tanda	persetujuan	anda	terhadap	Software
License.	Kemudian	pilih	button	lingkaran	biru,	untuk	memulai	proses	instalasi.	Tahapan
penginstalan	akan	berlangsung	dengan	cepat.	Jika	proses	ini	telah	selesai,	pilihlah	button
Done,	dan	untuk	selanjutnya	akan	muncul	tampilan	sebagai	berikut:
Panduan	Dasar	Pemrograman	Tizen
89Instalasi	Tizen
Window	yang	muncul	merupakan	pertanyaan	seputar	Update	Manager.	Pilih	Yes,	karena
pada	tahap	ini	kita	akan	melakukan	konfigurasi	instalasi	library-library	yang	dibutuhkan
Panduan	Dasar	Pemrograman	Tizen
90Instalasi	Tizen
Konfigurasi	Setelah	Instalasi	Tizen
Pada	bagian	ini,	kita	akan	melakukan	install	dan	update	terhadap	Tizen-SDK	kita
menggunakan	Tizen	Update	Manager.	Pilih	continue	untuk	melanjutkan	proses	instalasi,
sehingga	komputer	anda	memberikan	tampilan	sebagai	berikut:
Jika	anda	tidak	memiliki	sdk-image,	anda	bisa	melakukan	instalasi	dengan	memilih	package
instalasi	yang	anda	butuhkan	sesuai	dengan	gambar	di	atas.	Disarankan	anda	memilih
button	install	untuk	package	SDK	terbaru,	seperti	2.4	Mobile	dan	2.31.	Wearable.
Bagi	anda	yang	memiliki	SDK	image,	proses	instalasi	bisa	dilakukan	dengan	cara	membuka
menu	konfigurasi	pada	window	Tizen	Update	Manager	pada	pojok	kanan	atas.
Panduan	Dasar	Pemrograman	Tizen
91Konfigurasi	Setelah	Instalasi	Tizen
Kemudian,	ganti	Install	option	dengan	“SDK	Image”	dan	pilihlah	file	iso	yang	anda	miliki
untuk	melanjutkan	proses	instalasi.	Pilih	button	confirm	untuk	memulai	instalasi.
Panduan	Dasar	Pemrograman	Tizen
92Konfigurasi	Setelah	Instalasi	Tizen
Mengenal	Tizen	Development	IDE
Pada	tahap	ini	anda	telah	berhasil	melakukan	instalasi	Tizen	SDK.
Program	yang	telah	terinstal	dapat	dilihat	pada	folder	home/tizen-sdk/ide.	Anda	bisa
menjalankan	Tizen	IDE	dengan	memilih	icon	eclipse	pada	file	tersebut.	Opsi	kedua,	anda
juga	bisa	menjalankan	aplikasi	dengan	mencari	nya	pada	menu	search	Ubuntu,	dengan
mengetikkan	kata	“tizen”.	Semua	aplikasi	tizen	yang	telah	terinstall	akan	dimunculkan,
seperti,	IDE,	Web	Simulator,	Emulator,	Update	Manager	dan	Dynamic	Analyzer.
Panduan	Dasar	Pemrograman	Tizen
93Mengenal	Tizen	Development	IDE
Untuk	tahap	pertama	anda	diminta	untuk	melakukan	konfigurasi	alamat	workspace.	Jika
anda	berkenan	untuk	menyimpan	project	pada	direktori	default	seperti	yang	ditampilkan,
pilih	OK.	Namun,	jika	tidak,	pilih	Browse	dan	atur	sedemikian	lokasi	workspace	yang	anda
inginkan.
Maka	akan	muncul	tampilan	window	sebagai	berikut:
Panduan	Dasar	Pemrograman	Tizen
94Mengenal	Tizen	Development	IDE
Panduan	Dasar	Pemrograman	Tizen
95Mengenal	Tizen	Development	IDE
Tizen	Emulator
Tizen	SDK	telah	dilengkapi	dengan	emulator	sehingga	memungkinkan	kita	untuk	bisa
melakukan	simulasi	program	tanpa	harus	memiliki	device	Samsung	dengan	OS	Tizen.
Konfigurasi	emulator	Tizen	Device	bisa	dilakukan	dengan	cara	menjalankan	Emulator
Manager	yang	telah	ter-instal	seiring	dengan	instalasi	Tizen	SDK.
Untuk	mempermudah	pencarian,	pada	menu	search	aplikasi	yang	ada	pada	Ubuntu	anda,
ketik	“Emulator	manager”,	seperti	gambar	berikut:
Pilih	icon	Emulator	Manager	tersebut,	yang	selanjutnya	akan	memberikan	tampilan	sebagai
berikut:
Panduan	Dasar	Pemrograman	Tizen
96Mengenal	Tizen	Emulator
Untuk	membuat	Emulator	/	Virtual	Machine	(VM)	baru,	pilih	button	“Create	New”	yang	ada
pada	window	di	atas,	sehingga	memberikan	tampilan	sebagai	berikut:
Anda	bisa	melakukan	konfigurasi	seperti	Name,	Display,	Processor,	dan	RAM	sesuai
dengan	kebutuhan	development.	Jika	telah	sesuai	dengan	konfigurasi	yang	diinginkan	pilih
confirm
Panduan	Dasar	Pemrograman	Tizen
97Mengenal	Tizen	Emulator
Untuk	menjalankan	emulator,	klik	button	panah	yang	berada	pada	icon	tizen-01	di	atas.
Secara	otomatis	emulator	manager	akan	menampilkan	VM	dari	device	yang	telah	anda
setting	sebelumnya	seperti	gambar	di	bawah	ini:
Layaknya	sebuah	smartphone,	emulator	Tizen	ini	dilengkapi	dengan	button	menu,	home,
back,	power	dan	juga	volume.
Panduan	Dasar	Pemrograman	Tizen
98Mengenal	Tizen	Emulator
Hello	Tizen
Pada	bagian	ini	akan	dijelaskan	prosedur	sederhana	untuk	membuat	sebuah	program	“Hello
world”	pada	Tizen	SDK.
Membuat	Proyek	Baru
Untuk	langkah	pertama,	buka	Tizen	IDE	anda,	dan	buatlah	project	baru	dengan	nama
“HelloWorld”.	Ini	dilakukan	dengan	memilih	menu	File	->	New	->	Project.	Kemudian	pada
window	“New	Project”,	pilihlah	Tizen	Native	Project.
Pada	window	berikutnya,	anda	bisa	menemukan	beberapa	template	yang	telah	dipersiapkan
oleh	Tizen	IDE.	Untuk	tahap	ini,	mari	kita	gunakan	template	project	yang	paling	sederhana,
yaitu	Basic	UI	Application.	Untuk	project	awal	kali	ini,	ganti	nama	project	menjadi
“HelloWorld”,	kemudian	klik	button	Finish.
Panduan	Dasar	Pemrograman	Tizen
99Hello	World	Tizen
Tizen	IDE	anda	akan	memberikan	tampilan	sebagai	berikut:
Panduan	Dasar	Pemrograman	Tizen
100Hello	World	Tizen
Project	baru	yang	baru	saja	anda	bentuk,	dapat	dilihat	pada	tab	Project	Explorer	dengan
beberapa	folder	default,	diantaranya:
inc,	merupakan	folder	untuk	default	include	path
lib,	merupakan	folder	untuk	external	library	files
res,	merupakan	folder	untuk	resources	files
shared,	merupakan	folder	resource	files	yang	bisa	di-share	dengan	aplikasi	lainnya.
src,	merupakan	folder	utama	yang	berisikan	kode	aplikasi
tizen-manifest.xml,	merupakan	manifest	file	dari	aplikasi	anda.
Membuat	Program
Jika	anda	ingin	melakukan	konfigurasi	terhadap	informasi	umum	aplikasi	anda,	anda	bisa
melakukannya	dengan	memilih	tizen-manifest.xml	yang	ada	pada	Project	Explorer.	Tizen
IDE	akan	memberikan	tampilan	sebagai	berikut:
Panduan	Dasar	Pemrograman	Tizen
101Hello	World	Tizen
Anda	bisa
melakukan	konfigurasi	terhadap	properti	aplikasi	dengan	memanfaatkan	tab	yang	berada	di
bawah	manifest	editor
Overview:	Digunakan	untuk	mendefinisikan	informasi	umum,	seperti,	application
package,	version,	author,	dan	deskripsi
Features:	Digunakan	untuk	mendefinisikan	fitur	software	dan	hardware	yang	harus
dimiliki	agar	aplikasi	bisa	dijalankan	dengan	baik.
Privileges:	Digunakan	untuk	mengatur	privileges
Localization:	Digunakan	untuk	mengatur	supported	locales,	seperti	label,	deskripsi,	dan
icon.
Advanced:	Digunakan	untuk	mendefinisikan	advanced	feature	dari	aplikasi,	seperti
metadata,	data	control,	application	control	functionalities,	account,	dan	miscellaneous
option.
tizen-manifest.xml:	Digunakan	untuk	melakukan	konfigurasi	manual	pada	fie	xml.
Menjalankan	Program
Sebelum	kita	mempelajari	potongan	kode	dari	aplikasi	kita,	mari	kita	jalankan	aplikasi	kita
dengan	memilih	button	Run.
Panduan	Dasar	Pemrograman	Tizen
102Hello	World	Tizen
Bagi	anda	yang	baru	pertama	kali	menjalankan	aplikasi	di	Tizen	IDE,	anda	akan	mendapati
pesan	warning	untuk	melakukan	proses	Signing	seperti	di	bawah	ini:
Oleh	karena	itu,	aturlah	konfigurasi	Signing	anda	terlebih	dahulu	dengan	pertama-tama
mengklik	Preferences	>	Tizen	SDK	>	Security	Policies	yang	tertulis	pada	window	di	atas.
Sehingga	memberikan	tampilan	berikut:
Pertama,	pilih	button	Add,	sehingga	memunculkan	window	“Profile	Name”.	Isikan	nama
profile	yang	anda	inginkan	dan	kemudian	pilih	OK.	Langkah	selanjutnya,	pilih	button
Generate	untuk	mendapatkan	Author	Certificate.	Setelah	mengisikan	data	yang	diminta,
pilih	OK.	Dan	terakhir	pilih	Apply	dan	OK.
Jalankan	Program	ke	Tizen	Emulator
Jalankan	program	anda	sekali	lagi,	maka	akan	muncul	pilihan	emulator	sebagai	berikut:
Panduan	Dasar	Pemrograman	Tizen
103Hello	World	Tizen
Jika	sebelumnya	anda	belum	pernah	membuat	emulator,	anda	bisa	memilih	button
Emulator	Manager	dan	melakukan	konfigurasi	emulator	berdasarkan	penjelasan	sub-bab
sebelum	ini.	Jika	anda	telah	meiliki	emulator,	maka	jalankan	aplikasi	dengan	memilih	button
Launch.	Tizen	SDK	secara	otomatis	akan	menjalankan	aplikasi	anda	pada	emulator	yang
telah	anda	pilih.
Jalankan	Program	ke	Peralatan	Tizen
Untuk	menjalankan	aplikasi	hubungkan	device	Tizen	anda	terlebih	dahulu	dengan	komputer
menggunakan	kabel	USB.	Kemudian	jalankan	program	seperti	biasa	dengan	menekan
tombol	running	pada	IDE.	Pada	pilihan	target	running,	device	anda	akan	muncul	sebagai
Panduan	Dasar	Pemrograman	Tizen
104Hello	World	Tizen
salah	satu	opsi.	Pilih	device	anda,	dan	pilih	button	Launch.
Penjelasan	tentang	kode	program
Karena	Tizen	SDK	dibangun	dengan	bahasa	C	yang	tidak	mendukung	konsep	OOP
layaknya	java,	maka	konsep	struct	dan	pointer	diimplementasikan	agar	mempermudah
keterbacaan	program.
appdata_s
	appdata_s		merupakan	object	berupa	struct	yang	menampung	semua	kebutuhan	akan
	Evas_Object		dari	aplikasi	kita.	Ada	tiga	Evas_Object	yang	dibutuhkan	untuk	menampilkan
“Hello	Tizen”	pada	device	Tizen	kita,	yaitu:	win,	conform	dan	label.
ui_app_lifecycle_callback_s
Seperti	yang	dilihat	pada	potongan	kode	di	atas,		event_callback		merupakan	variable	dari
tipe	data	struct	bernama		ui_app_lifecycle_callback_s	.	Struct	ini	memiliki	beberapa	atribut
callback	function	yang	harus	diinisialiasi	seperti:
create,	fungsi	yang	akan	dipanggil	ketika	aplikasi	pertama	kali	dijalankan
terminate,	fungsi	yang	dijalankan	sekali,	saat	aplikasi	berhenti	digunakan	pause,	fungsi
yang	dijalankan	saat	aplikasi	tidak	digunakan	dalam	waktu	tertentu	dan	menjadi
invisible	terhadap	user
Panduan	Dasar	Pemrograman	Tizen
105Hello	World	Tizen
resume,	fungsi	yang	dipanggil	setelah	fase	pause	yaitu	saat	aplikasi	kembali
digunakan.
app_control,	fungsi	yang	dipanggil	saat	aplikasi	lain	mengirimkan	request	untuk
menjalankan	aplikasi	ini.
Pada	potongan	kode	di	atas,	setiap	atribut	ini	diinisialisasi	dengan	fungsi-fungsi	yang
didefinisikan	pada	helloworld.c.	Sebagai	contoh,	atribute	create	diinisialisasi	dengan	fungsi
	app_create	.
Fungsi		app_create		yang	ada	pada	gambar	di	atas	bertujuan	untuk	melakukan	inisialisasi	UI
ketika	aplikasi	baru	saja	dijalankan.	Pada	gambar	di	atas	terlihat	bahwa	fungsi		app_create	
memanggil	fungsi		create_base_gui()	yang	berfungsi	sebagai	konfigurasi	UI	berupa	window,
conformant,	dan	label	“Hello	Tizen”	yang	dimunculkan	pada	aplikasi	HelloWorld	ini.
Panduan	Dasar	Pemrograman	Tizen
106Hello	World	Tizen
Pada	fungsi	di	atas,	parameter	fungsi	yang	berupa	pointer	yang	menunjuk	struct	appdata_s
digunakan	untuk	menginisialisasi	window	dan	conformant	dari	aplikasi	Tizen	kita.	Window
merupakan	layer	paling	bawah	dari	aplikasi	Tizen.	Untuk	mengisi	window	dengan	elemen-
elemen	berupa	button,	text,	radio	button	dsb,	diperlukan	suatu	base	layer	bernama
conformant.
Sesuai	dengan	kebutuhan	aplikasi	pertama	kita	ini,	elemen	yang	cukup	ditambahkan	di	atas
base	layer	adalah	label.	Label	ini	bertuliskan		<align=center>Hello	Tizen</align>		yang
kemudian	ditampilkan	sebagai	content	di	atas	conformant.
app_event_handler_h
Variabel	ini	digunakan	sebagai	event	handler	yang	digunakan	untuk	menampung	alamat
fungsi-fungsi	handler	yang	kita	inginkan.	Secara	default,	terdapat	5	event	yang	didefinisikan
pada	fungsi	main,	yaitu:
event	untuk	meng-handle	kondisi	low	battery
event	untuk	meng-handle	kondisi	low	memory
event	untuk	meng-handle	perubahan	orientasi	device
event	untuk	meng-handle	perubahan	bahasa
Panduan	Dasar	Pemrograman	Tizen
107Hello	World	Tizen
event	untuk	meng-handle	perubahan	format	region	atau	zona	wilayah
Panduan	Dasar	Pemrograman	Tizen
108Hello	World	Tizen
Project	Tizen	Pertamaku:	Kalkulator
Sederhana	Menggunakan	UI	Builder
Pada	sub-bab	kali	ini,	kita	akan	membuat	sebuah	program	kalkulator	sederhana	dengan
memanfaatkan	fitur	WYSIWYG	(What	You	See	is	What	You	Get)	dari	Tizen	SDK.	Metode
WYSIWYG	ini	memungkinkan	kita	untuk	membangun	UI	tizen	secara	drag-and-drop.
Membuat	Proyek	Baru
Untuk	langkah	pertama,	mari	kita	buat	project	baru	bernama	kalkulator.	Pertama,	pilih	Menu
>	New	>	Project	>	Tizen	Native	Project	dan	kemudian	pilih	button	Next.	Kemudian	pilih
template	UI	Builder	-	Single	View	yang	diperuntukkan	untuk	developer	yang	ingin
membangun	aplikasi	dengan	satu	tampilan	view.	Ganti	nama	Project	anda	dengan
“Kalkulator”	dan	kemudian	pilih	Finish.
Membuat	Tampilan	(UI)	Tizen
Panduan	Dasar	Pemrograman	Tizen
109Proyek	Tizen	Pertamaku
Tampilan	pertama	dari	IDE	anda	adalah	window	WYSIWYG	dengan	sebuah	file	bernama
layout.tuml.	Pada	bagian	kiri	terdapat	Palette	yang	berisikan	Button,	Display	UI	Component,
Input	UI,	Item	Container,	UI	Component	Container,	View	Container,	dan	Snippets.
Tahap	1	-	Mendesain	User	Interface
Perlu	anda	ketahui,	bahwa	sebelum	meletakkan	berbagai	item	berupa	button,	label,	textview
dsb,	diperlukan	sebuah	object	container	yang	digunakan	untuk	menampung	semua	item-
item	ini.	Penjelasan	terkait	container	yang	disediakan	oleh	Tizen	SDK,	bisa	ditemukan	pada
website	tizen	development,	atau	buku	panduan	kita	pada	series	berikutnya.
Untuk	menyederhanakan	program	yang	akan	kita	buat,	mari	kita	gunakan	UI	Component
Component	berupa	Grid.	Container	Grid	ini	memungkinkan	kita	untuk	meletakkan	berbagai
item	pada	setiap	zona	screen	layar	device.	Langkah-langkahnya,	Pilih	UI	Component
Container	yang	ada	pada	tab	Palette,	kemudian	drag	dan	drop	icon	Grid	ke	layar	design.
Sebagai	hasilnya,	secara	otomatis,	seluruh	screen	layar	menjadi	container	Grid.	Memang
tidak	ada	perubahan	yang	terlihat,	tapi	pada	tab	Outline	di	bagian	bawah,	bisa	dilihat	bahwa
View	layout	kita	memiliki	anak	berupa	container	Grid.
Untuk	membuat	kalkulator	sederhana,	kita	akan	menggunakan	tiga	item	utama,	yaitu
Button,	Label,	dan	Entry
Panduan	Dasar	Pemrograman	Tizen
110Proyek	Tizen	Pertamaku
Ketika	anda	melakukan	drag	dan	drop	untuk	setiap	item	dari	Palette,	perhatikan	tab
properties	yang	ada	pada	pojok	kanan	IDE.	Untuk	setiap	item	anda	bisa	memodifikasi	ID
dari	item,	text	yang	tertulis,	style,	dsb	pada	tab	Attributes	dari	Properties.
Pada	tampilan	di	atas,	adapun	button,	label,	dan	Entry	yang	digunakan	menggunakan	ID
dan	text	sebagai	berikut:
ID Text ID Text ID Text
Button1 1 Button7 7 ButtonKurang -
Button2 2 Button8 8 ButtonKali x
Button3 3 Button9 9 ButtonBagi /
Button4 4 Button0 0 ButtonSamaDengan =
Button5 5 EntryLayar 0 ButtonReset C
Button6 6 ButtonTambah + label1
KALKULATOR
SAYA
Tahap	2	-	Mengimplementasikan	Event	Listener
Pada	tahap	ini,	User	Interface	yang	anda	inginkan	telah	selesai	dibangun.	Pada	tahap
kedua	kita	akan	mengimplementasikan	kode	program	terkait	Event	handler	ketika	button	di-
click.	Pada	mekanisme	WYSIWYG	ini	anda	bisa	melakukannya	dengan	cara	memanfaatkan
Tab	Event	yang	ada	pada	Tab	Properties,	seperti	gambar	berikut:
Untuk	setiap	button	yang	di-klik	(clicked),	kita	implementasikan	event	handler	nya	dengan
memilih	tanda	+	pada	tab	Properties	/	Event	sesuai	dengan	gambar	di	atas	dan	dilanjutkan
dengan	memilih	tanda	→	sehingga	IDE	akan	menampilkan	potongan	fungsi	yang	dapat	diisi
Panduan	Dasar	Pemrograman	Tizen
111Proyek	Tizen	Pertamaku
sesuai	dengan	kebutuhan.
Untuk	setiap	button	angka	dari	1,	2,	3,	4,	5,	6,	7,	8,	9,	dan	0	bisa	diimplementasikan	dengan
potongan	kode	berikut:
EntryLayar	merupakan	ID	dari	layar	kalkulator	kita.	Pada	fungsi	di	atas,	ketika	button	angka
1	diklik	maka	kita	akan	melakukan	update	kepada	layar.	Lakukan	hal	serupa	untuk	angka-
angka	lainnya.	Untuk	ButtonReset,	atur	layar	menjadi	0	seperti	potongan	kode	berikut:
Anda	bisa	menyesuaikan	implementasi	fungsi	sesuai	dengan	kebutuhan	anda.	Untuk
program	kalkulator	sederhana	ini,	kita	menggunakan	beberapa	global	variabel	yang	bisa
diakses	dari	berbagai	folder	program.
Panduan	Dasar	Pemrograman	Tizen
112Proyek	Tizen	Pertamaku
Global	variabel	ini	dideklarasikan	pada	sebuah	header	file	(disini	kita	meletakkannya	di
app_main.h).	Ada	beberapa	global	variabel	yang	digunakan	seperti	angka,
numberIsClicked,	operatorIsClicked,	dan	length.	Variabel	ini	digunakan	untuk	membantu
proses	perhitungan	dan	validasi	button	ketika	diklik	oleh	user.
Nah	mudah	bukan?	Lakukan	pula	hal	yang	serupa	untuk	mengimplementasikan	button
operator	tambah,	kurang,	bagi,	kali	dan	juga	sama	dengan.	Selamat	berlatih	:)
Panduan	Dasar	Pemrograman	Tizen
113Proyek	Tizen	Pertamaku
Pendahuluan
Pada	sesi	ini	kita	akan	melakukan	instalasi	dan	konfigurasi	guna	membuat	aplikasi	Tizen
diatas	platform	Mac.	Disini	penulis	akan	menggunakan	Mac	OS	X	El	Capitan	(10.11.x)
sebagai	testingnya.
Panduan	Dasar	Pemrograman	Tizen
114Pemrograman	Tizen	untuk	Platform	Mac
Persiapan	untuk	Instalasi
Secara	umum,	hal	yang	perlu	disiapkan	dalam	membangun	lingkungan	pengembangan
Tizen	sebagai	berikut:
Perangkat	keras:
Mesin	Mac,	sebisa	mungkin	dengan	spesifikasi	yang	memang	dirancang	untuk
development
Kapasitas	memory	sebaiknya	minimal	4GB	atau	lebih
Ketersedia	hardisk	kurang	lebih	5	GB
Perangkat	lunak:
Java	Legacy	untuk	Mac.Ini	dapat	di	unduh	di	website	Apple.	Sebagai	contoh	ini
https://support.apple.com/kb/dl1572
Tizen	SDK.	Ini	dapat	diunduh	di
https://developer.tizen.org/development/tools/download	.	Direkomendasikan	unduh
SDK	yang	terbaru	untuk	Mac
Sebelum	melakukan	instalasi	SDK	Tizen,	pastikan	Mac	anda	sudah	terinstall	Xcode	untuk
memastikan	semua	prasyarat	development	pada	Mac	terpenuhi.
Langkah	selanjutnya,	kita	akan	melakukan	instalasi	SDK	Tizen.
Panduan	Dasar	Pemrograman	Tizen
115Persiapan	Instalasi
Instalasi	Tizen
Setelah	unduh	file	SDK	Tizen	untuk	Mac	di
https://developer.tizen.org/development/tools/download,	anda	dapat	menjalankan	file	setup
(*.dmg)	sehingga	akan	mendapatkan	kotak	dialog	seperti	dibawah	ini	
Proses	instalasi	ini	memerlukan	koneksi	Internet	untuk	proses	update	nya.	Opsi	lain,	anda
dapat	unduh	file	SDK	Image	terlebih	dulu.
Pada	gambar	diatas,	klik	file	installer	sehingga	anda	mendapatkan	kotak	dialog	seperti	pada
gambar	dibawah	ini.
Pilih	lokasi	instalasinya.	Jika	sudah,	klik	checkbox	Accept.
Panduan	Dasar	Pemrograman	Tizen
116Instalasi	Tizen
Untuk	memulai	instalasi,	klik	tombol	lingkan	yang	didalamnya	ada	panah	kebawah.
Proses	instalasi	cukup	lama	untuk	anda	yang	memiliki	koneksi	Internet	yang	pelan.
Jika	sudah	selesai	proses	instalasinya,	anda	dapat	melihat	menu	Update	Manager-x.y
dimana	x.y	adalah	versi	dari	Tizen	Update	Manager.
Langkah	selanjutnya,	kita	harus	melakukan	konfigurasi	Tizen	SDK	dan	Emulator	nya.
Panduan	Dasar	Pemrograman	Tizen
117Instalasi	Tizen
Konfigurasi	Setelah	Instalasi	Tizen
Untuk	melengkapi	development,	kita	harus	menjalankan	Update	Manager	sebagai	bagian
post	installation.	Tujuannya	untuk	instalasi	SDK	Tizen	yang	didalamnya	ada	Development
tool	dan	Emulator.
Ketika	Update	Manager	ini	dijalankan,	kita	akan	mendapatkan	kotak	dialog	seperti	dibawah
ini.
Panduan	Dasar	Pemrograman	Tizen
118Konfigurasi	Setelah	Instalasi	Tizen
Pada	tab	All	Packages,	install	bagian	yang	ingin	di	install.	Sebaiknya	centang	bagian	yang
terbaru	misalkan	untuk	Mobile	atau	Wearable	atau	keduanya	jika	kita	ingin	membuat
aplikasi	dengan	target	Mobile	dan	Wearable.
Proses	ini	akan	memerlukan	waktu	sesuai	dengan	kecepatan	Internet	yang	dimiliki.
Jika	pembaca	melakukan	unduh	dulu	SDK	image	supaya	memangkas	proses	unduh	dari
instalasi	maka	kita	bisa	konfigurasi	bagian	setting	nya.
Klik	ikon	setting	seperti	yang	ditunjukkan	panah	di	gambar	dibawah	ini.
Panduan	Dasar	Pemrograman	Tizen
119Konfigurasi	Setelah	Instalasi	Tizen
Setelah	diklik,	kita	akan	mendapat	kotak	dialog	dibawah	ini.	Klik	bagian	Install	Option,	dan
pilih	SDK	Image.	Kemudian	isi	dengan	file	SDK	Image	yang	telah	di	unduh	sebelumnya.
Panduan	Dasar	Pemrograman	Tizen
120Konfigurasi	Setelah	Instalasi	Tizen
Jika	sudah	proses	instalasinya,	anda	sudah	siap	membanguna	aplikasi	Tizen.
Panduan	Dasar	Pemrograman	Tizen
121Konfigurasi	Setelah	Instalasi	Tizen
Mengenal	Tizen	Development	IDE
Setelah	di	install	semua	SDK	Tizen	termasuk	IDE	nya,	kita	akan	melihat	menu	Tizen	IDE
seperti	yang	terlihat	pada	gambar	dibawah	ini.
Klik	menu	Tizen	IDE-x.y	pada	menu	anda.
Panduan	Dasar	Pemrograman	Tizen
122Mengenal	Tizen	Development	IDE
Pertama	kali	kita	akan	ditanyakan	folder	untuk	working.	Pilih	folder	kerja	anda.
Jika	sudah,	klik	tombol	OK.	Dan	akhirnya	kita	mendapatkan	Tizen	IDE	seperti	yang	terlihat
pada	gambar	dibawah	ini.
Secara	umum,	Tizen	IDE	mirip	dengan	Eclipse.	Ya	!!,	karena	Tizen	IDE	dikembangkan	dari
Eclipse	IDE.
Panduan	Dasar	Pemrograman	Tizen
123Mengenal	Tizen	Development	IDE
Tizen	Emulator
Tidak	perlu	memiliki	perangkat	berbasis	Tizen	untuk	menguji	aplikasi	Tizen	kita	berhasil	atau
tidak.
Tizen	Emulator	memungkingkan	kita	membuat	aplikasi	Tizen	dengan	cepat.
Dengan	mengklik	menu	Emulator	Manager-x.y	dimana	x.y	adalah	versi	aplikasi,	kita	akan
mendapatkan	aplikasi	Tizen	Emulator	Manager	seperti	yang	terlihat	pada	gambar	dibawah
ini.
Panduan	Dasar	Pemrograman	Tizen
124Mengenal	Tizen	Emulator
Membuat	Tizen	Emulator	Baru
Kita	dapat	membuat	Emulator	baru	melalui	Emulator	Manager.	Cukup	klik	Create	New	pada
form	menu	depan	dibagian	tab	mobile.
Jika	sudah	diklik,	kita	akan	melihat	properti	dari	Tizen	Emulator	ini.	Contoh	tampilan	seperti
yang	terlihat	pada	gambar	dibawah	ini.
Panduan	Dasar	Pemrograman	Tizen
125Mengenal	Tizen	Emulator
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen
Programming Basics guide Tizen

More Related Content

Viewers also liked

[KOR][E-Kor-Seminar 2014][2/8] Webkit EFL (Ryuan)
[KOR][E-Kor-Seminar 2014][2/8] Webkit EFL (Ryuan)[KOR][E-Kor-Seminar 2014][2/8] Webkit EFL (Ryuan)
[KOR][E-Kor-Seminar 2014][2/8] Webkit EFL (Ryuan)EnlightenmentProject
 
Tizen Operating System
Tizen Operating SystemTizen Operating System
Tizen Operating SystemUday_Peddur
 
Tizen introduction & architecture
Tizen introduction & architectureTizen introduction & architecture
Tizen introduction & architectureYoonsoo Kim
 
Tizen operating system seminar ppt
Tizen operating system seminar pptTizen operating system seminar ppt
Tizen operating system seminar pptAjinkyalenekar12
 
Tizen Overview and Architecture - Seokjae Jeong (Samsung) - Korea Linux Forum...
Tizen Overview and Architecture - Seokjae Jeong (Samsung) - Korea Linux Forum...Tizen Overview and Architecture - Seokjae Jeong (Samsung) - Korea Linux Forum...
Tizen Overview and Architecture - Seokjae Jeong (Samsung) - Korea Linux Forum...Ryo Jin
 
Samsung Indonesia: Tizen Store
Samsung Indonesia: Tizen StoreSamsung Indonesia: Tizen Store
Samsung Indonesia: Tizen StoreRyo Jin
 

Viewers also liked (7)

Tizen os seminar report
Tizen os seminar reportTizen os seminar report
Tizen os seminar report
 
[KOR][E-Kor-Seminar 2014][2/8] Webkit EFL (Ryuan)
[KOR][E-Kor-Seminar 2014][2/8] Webkit EFL (Ryuan)[KOR][E-Kor-Seminar 2014][2/8] Webkit EFL (Ryuan)
[KOR][E-Kor-Seminar 2014][2/8] Webkit EFL (Ryuan)
 
Tizen Operating System
Tizen Operating SystemTizen Operating System
Tizen Operating System
 
Tizen introduction & architecture
Tizen introduction & architectureTizen introduction & architecture
Tizen introduction & architecture
 
Tizen operating system seminar ppt
Tizen operating system seminar pptTizen operating system seminar ppt
Tizen operating system seminar ppt
 
Tizen Overview and Architecture - Seokjae Jeong (Samsung) - Korea Linux Forum...
Tizen Overview and Architecture - Seokjae Jeong (Samsung) - Korea Linux Forum...Tizen Overview and Architecture - Seokjae Jeong (Samsung) - Korea Linux Forum...
Tizen Overview and Architecture - Seokjae Jeong (Samsung) - Korea Linux Forum...
 
Samsung Indonesia: Tizen Store
Samsung Indonesia: Tizen StoreSamsung Indonesia: Tizen Store
Samsung Indonesia: Tizen Store
 

Similar to Programming Basics guide Tizen

1. pengenalan python
1. pengenalan python1. pengenalan python
1. pengenalan pythonirwansyah122
 
Kk8 melakukan instalasi software
Kk8 melakukan instalasi softwareKk8 melakukan instalasi software
Kk8 melakukan instalasi softwareWahyu S
 
Slide-INF-Modul-1.pptx
Slide-INF-Modul-1.pptxSlide-INF-Modul-1.pptx
Slide-INF-Modul-1.pptxNitha Thatha
 
Slide-INF-Modul-1.pptx
Slide-INF-Modul-1.pptxSlide-INF-Modul-1.pptx
Slide-INF-Modul-1.pptxyunusziliwu
 
E zit vol 1
E zit vol 1E zit vol 1
E zit vol 1Bfhie El
 
2013-8. Remastering Ubuntu 12.04
2013-8. Remastering Ubuntu 12.04 2013-8. Remastering Ubuntu 12.04
2013-8. Remastering Ubuntu 12.04 Syiroy Uddin
 
laporan INSTALASI OS LINUX
laporan INSTALASI OS LINUXlaporan INSTALASI OS LINUX
laporan INSTALASI OS LINUXMela Roviani
 
Instalasi Odoo ERP pada Ubuntu WSL di Windows
Instalasi Odoo ERP pada Ubuntu WSL di WindowsInstalasi Odoo ERP pada Ubuntu WSL di Windows
Instalasi Odoo ERP pada Ubuntu WSL di WindowsAziz Adi Nugroho
 
PHPTriad: Cara Gampang Belajar PHP di WINDOWS
PHPTriad: Cara Gampang Belajar PHP di WINDOWSPHPTriad: Cara Gampang Belajar PHP di WINDOWS
PHPTriad: Cara Gampang Belajar PHP di WINDOWSAbdi Januar Putra
 
2317283.ppt
2317283.ppt2317283.ppt
2317283.pptAgiHusni
 
Tp5 1304145 kanita nada hasya
Tp5 1304145 kanita nada hasyaTp5 1304145 kanita nada hasya
Tp5 1304145 kanita nada hasyaHalo Knh
 

Similar to Programming Basics guide Tizen (20)

1. pengenalan python
1. pengenalan python1. pengenalan python
1. pengenalan python
 
PythonTeX
PythonTeXPythonTeX
PythonTeX
 
Tp5 1304151 muhammad fiqih al farouq
Tp5 1304151 muhammad fiqih al farouqTp5 1304151 muhammad fiqih al farouq
Tp5 1304151 muhammad fiqih al farouq
 
Kk8 melakukan instalasi software
Kk8 melakukan instalasi softwareKk8 melakukan instalasi software
Kk8 melakukan instalasi software
 
Kk8
Kk8Kk8
Kk8
 
KK_8_TKJ
KK_8_TKJKK_8_TKJ
KK_8_TKJ
 
Zona IT E-Book Volume I
Zona IT E-Book Volume IZona IT E-Book Volume I
Zona IT E-Book Volume I
 
Slide-INF-Modul-1.pptx
Slide-INF-Modul-1.pptxSlide-INF-Modul-1.pptx
Slide-INF-Modul-1.pptx
 
Slide-INF-Modul-1.pptx
Slide-INF-Modul-1.pptxSlide-INF-Modul-1.pptx
Slide-INF-Modul-1.pptx
 
E zit vol 1
E zit vol 1E zit vol 1
E zit vol 1
 
2013-8. Remastering Ubuntu 12.04
2013-8. Remastering Ubuntu 12.04 2013-8. Remastering Ubuntu 12.04
2013-8. Remastering Ubuntu 12.04
 
laporan INSTALASI OS LINUX
laporan INSTALASI OS LINUXlaporan INSTALASI OS LINUX
laporan INSTALASI OS LINUX
 
Instalasi Odoo ERP pada Ubuntu WSL di Windows
Instalasi Odoo ERP pada Ubuntu WSL di WindowsInstalasi Odoo ERP pada Ubuntu WSL di Windows
Instalasi Odoo ERP pada Ubuntu WSL di Windows
 
PHPTriad: Cara Gampang Belajar PHP di WINDOWS
PHPTriad: Cara Gampang Belajar PHP di WINDOWSPHPTriad: Cara Gampang Belajar PHP di WINDOWS
PHPTriad: Cara Gampang Belajar PHP di WINDOWS
 
Besut Kode - Workshop 2
Besut Kode - Workshop 2Besut Kode - Workshop 2
Besut Kode - Workshop 2
 
2317283.ppt
2317283.ppt2317283.ppt
2317283.ppt
 
Makalah asm 1705552015 sosmedpararel
Makalah asm 1705552015 sosmedpararelMakalah asm 1705552015 sosmedpararel
Makalah asm 1705552015 sosmedpararel
 
Tp5 1304145 kanita nada hasya
Tp5 1304145 kanita nada hasyaTp5 1304145 kanita nada hasya
Tp5 1304145 kanita nada hasya
 
Part1 introduction
Part1 introductionPart1 introduction
Part1 introduction
 
Sistem operasi open source
Sistem operasi open sourceSistem operasi open source
Sistem operasi open source
 

More from TizenExperts

Samsung Gear Fit2 Pro SM-R365
Samsung Gear Fit2 Pro SM-R365 Samsung Gear Fit2 Pro SM-R365
Samsung Gear Fit2 Pro SM-R365 TizenExperts
 
Gear Sport smartwatch user manual SM-R600
Gear Sport smartwatch user manual  SM-R600Gear Sport smartwatch user manual  SM-R600
Gear Sport smartwatch user manual SM-R600TizenExperts
 
Samsung Gear S3 SM-R760 SM-R765F SM-R770
Samsung Gear S3 SM-R760 SM-R765F SM-R770Samsung Gear S3 SM-R760 SM-R765F SM-R770
Samsung Gear S3 SM-R760 SM-R765F SM-R770TizenExperts
 
Sm z200 User Manual (Tizen) ver 1.0
Sm z200 User Manual (Tizen) ver 1.0  Sm z200 User Manual (Tizen) ver 1.0
Sm z200 User Manual (Tizen) ver 1.0 TizenExperts
 
Monthly top 100 tizen mobile app incentive program
Monthly top 100  tizen mobile app incentive programMonthly top 100  tizen mobile app incentive program
Monthly top 100 tizen mobile app incentive programTizenExperts
 
User Manual for Samsung SM-Z400F/DS and Samsung SM-Z400Y
User Manual for Samsung SM-Z400F/DS and Samsung SM-Z400YUser Manual for Samsung SM-Z400F/DS and Samsung SM-Z400Y
User Manual for Samsung SM-Z400F/DS and Samsung SM-Z400YTizenExperts
 
Tizen Studio Watch Face Developer Guide
Tizen Studio Watch Face Developer GuideTizen Studio Watch Face Developer Guide
Tizen Studio Watch Face Developer GuideTizenExperts
 
Samsung Gear S3 SM-R770- SM-760- Final User Manual
Samsung Gear S3 SM-R770- SM-760- Final User ManualSamsung Gear S3 SM-R770- SM-760- Final User Manual
Samsung Gear S3 SM-R770- SM-760- Final User ManualTizenExperts
 
How to use coupons
How to use couponsHow to use coupons
How to use couponsTizenExperts
 
Tizen Web App Development webinar
Tizen Web App Development webinarTizen Web App Development webinar
Tizen Web App Development webinarTizenExperts
 
Sm r760 r770-um_open_tizen_ger_rev.1.0_161104
Sm r760 r770-um_open_tizen_ger_rev.1.0_161104Sm r760 r770-um_open_tizen_ger_rev.1.0_161104
Sm r760 r770-um_open_tizen_ger_rev.1.0_161104TizenExperts
 
Samsung Gear S3 User Manual Sm R760 R770 in French
Samsung Gear S3 User Manual Sm R760 R770 in FrenchSamsung Gear S3 User Manual Sm R760 R770 in French
Samsung Gear S3 User Manual Sm R760 R770 in FrenchTizenExperts
 
Samsung Gear S3 User Manual Sm R760 R770 for Nederlands
Samsung Gear S3 User Manual Sm R760 R770 for NederlandsSamsung Gear S3 User Manual Sm R760 R770 for Nederlands
Samsung Gear S3 User Manual Sm R760 R770 for NederlandsTizenExperts
 
Samsung Gear S3 User Manual Sm R760 R770
Samsung Gear S3 User Manual Sm R760 R770Samsung Gear S3 User Manual Sm R760 R770
Samsung Gear S3 User Manual Sm R760 R770TizenExperts
 
Smartwatch Indonesian version
Smartwatch Indonesian versionSmartwatch Indonesian version
Smartwatch Indonesian versionTizenExperts
 
(En) Samsung Gear Fit 2 Watchface Design Duide
(En) Samsung  Gear Fit 2 Watchface Design Duide(En) Samsung  Gear Fit 2 Watchface Design Duide
(En) Samsung Gear Fit 2 Watchface Design DuideTizenExperts
 
(Kr) gear fit2 watchface design guide (1)
(Kr) gear fit2 watchface design guide (1)(Kr) gear fit2 watchface design guide (1)
(Kr) gear fit2 watchface design guide (1)TizenExperts
 
The Controlling Application for the Smartwatches Samsung Gear S2
The Controlling Application for the Smartwatches Samsung Gear S2The Controlling Application for the Smartwatches Samsung Gear S2
The Controlling Application for the Smartwatches Samsung Gear S2TizenExperts
 
Samsung SM R360 Tizen Smartwatch User Manual
Samsung SM R360 Tizen Smartwatch User Manual Samsung SM R360 Tizen Smartwatch User Manual
Samsung SM R360 Tizen Smartwatch User Manual TizenExperts
 
Samsung NX1 User Manual
Samsung NX1 User ManualSamsung NX1 User Manual
Samsung NX1 User ManualTizenExperts
 

More from TizenExperts (20)

Samsung Gear Fit2 Pro SM-R365
Samsung Gear Fit2 Pro SM-R365 Samsung Gear Fit2 Pro SM-R365
Samsung Gear Fit2 Pro SM-R365
 
Gear Sport smartwatch user manual SM-R600
Gear Sport smartwatch user manual  SM-R600Gear Sport smartwatch user manual  SM-R600
Gear Sport smartwatch user manual SM-R600
 
Samsung Gear S3 SM-R760 SM-R765F SM-R770
Samsung Gear S3 SM-R760 SM-R765F SM-R770Samsung Gear S3 SM-R760 SM-R765F SM-R770
Samsung Gear S3 SM-R760 SM-R765F SM-R770
 
Sm z200 User Manual (Tizen) ver 1.0
Sm z200 User Manual (Tizen) ver 1.0  Sm z200 User Manual (Tizen) ver 1.0
Sm z200 User Manual (Tizen) ver 1.0
 
Monthly top 100 tizen mobile app incentive program
Monthly top 100  tizen mobile app incentive programMonthly top 100  tizen mobile app incentive program
Monthly top 100 tizen mobile app incentive program
 
User Manual for Samsung SM-Z400F/DS and Samsung SM-Z400Y
User Manual for Samsung SM-Z400F/DS and Samsung SM-Z400YUser Manual for Samsung SM-Z400F/DS and Samsung SM-Z400Y
User Manual for Samsung SM-Z400F/DS and Samsung SM-Z400Y
 
Tizen Studio Watch Face Developer Guide
Tizen Studio Watch Face Developer GuideTizen Studio Watch Face Developer Guide
Tizen Studio Watch Face Developer Guide
 
Samsung Gear S3 SM-R770- SM-760- Final User Manual
Samsung Gear S3 SM-R770- SM-760- Final User ManualSamsung Gear S3 SM-R770- SM-760- Final User Manual
Samsung Gear S3 SM-R770- SM-760- Final User Manual
 
How to use coupons
How to use couponsHow to use coupons
How to use coupons
 
Tizen Web App Development webinar
Tizen Web App Development webinarTizen Web App Development webinar
Tizen Web App Development webinar
 
Sm r760 r770-um_open_tizen_ger_rev.1.0_161104
Sm r760 r770-um_open_tizen_ger_rev.1.0_161104Sm r760 r770-um_open_tizen_ger_rev.1.0_161104
Sm r760 r770-um_open_tizen_ger_rev.1.0_161104
 
Samsung Gear S3 User Manual Sm R760 R770 in French
Samsung Gear S3 User Manual Sm R760 R770 in FrenchSamsung Gear S3 User Manual Sm R760 R770 in French
Samsung Gear S3 User Manual Sm R760 R770 in French
 
Samsung Gear S3 User Manual Sm R760 R770 for Nederlands
Samsung Gear S3 User Manual Sm R760 R770 for NederlandsSamsung Gear S3 User Manual Sm R760 R770 for Nederlands
Samsung Gear S3 User Manual Sm R760 R770 for Nederlands
 
Samsung Gear S3 User Manual Sm R760 R770
Samsung Gear S3 User Manual Sm R760 R770Samsung Gear S3 User Manual Sm R760 R770
Samsung Gear S3 User Manual Sm R760 R770
 
Smartwatch Indonesian version
Smartwatch Indonesian versionSmartwatch Indonesian version
Smartwatch Indonesian version
 
(En) Samsung Gear Fit 2 Watchface Design Duide
(En) Samsung  Gear Fit 2 Watchface Design Duide(En) Samsung  Gear Fit 2 Watchface Design Duide
(En) Samsung Gear Fit 2 Watchface Design Duide
 
(Kr) gear fit2 watchface design guide (1)
(Kr) gear fit2 watchface design guide (1)(Kr) gear fit2 watchface design guide (1)
(Kr) gear fit2 watchface design guide (1)
 
The Controlling Application for the Smartwatches Samsung Gear S2
The Controlling Application for the Smartwatches Samsung Gear S2The Controlling Application for the Smartwatches Samsung Gear S2
The Controlling Application for the Smartwatches Samsung Gear S2
 
Samsung SM R360 Tizen Smartwatch User Manual
Samsung SM R360 Tizen Smartwatch User Manual Samsung SM R360 Tizen Smartwatch User Manual
Samsung SM R360 Tizen Smartwatch User Manual
 
Samsung NX1 User Manual
Samsung NX1 User ManualSamsung NX1 User Manual
Samsung NX1 User Manual
 

Programming Basics guide Tizen