You are on page 1of 32
Mobile Setelah mempelajari mater! ini, pasarta didie ciharapkan deat: Marit et meant olay te plas! mote ean - ‘dan menerapkan teknik desain aplikast must window Marhara dan mambset dessin apikaal window Pada zaman dahulu, telepon adalsh sebuah alat komunikasi yang digunakan manusia untuk berkomunikasi dua arah, Sekarang ini sudah dikenal telepon yang tidak hanya digunakan untuk bertelepon ‘saja, tetapi dengan telepon kita bisa mengakses internet, video call, chatting, mendengarkan musik, streaming video, bertukar gambar, membuka email, dan sebagainya. Telepon tersebut dinamakan ‘smartphone. Pernahkah Anda menggunakan smartphone? Dapat dilihat dari namanya, smartphone dapat diartikan telepon pintar. Selain digunakan untuk bertelepon, dapat juga digunakan untuk membantu menyelesaikan pekerjaan lainnya dengan mengunduh aplikasi yang disediakan oleh vendor maupun aplikasi open source lainnya. Perkembangan teknologi smartphone saat ini memberikan kesempatan bagi para kreator dan pengembang aplikasi untuk memaksimalkan segala fitur yang terdapat pada perangkat tersebut. Banyak sekall bisnis yang akhimya berpusat pada para pengguna smartphone ini, seperti bisnis belanja oniirre, ojek online, pembayaran online, dan berbagai macam bisnis berbasis ontine lainnya. Bagaimana cara membuat aplikasi-aplikasi yang dapat diakses oleh smartphone? Untuk mengetahui dasar tentang teknalogi pengembangan aplikasi perangkat bergerak, pelajari materi berikut dengan cermat! A. Aplikasi Mobile (Android) 1. Pengenalan pengembangan aplikasi mobile (Android) Android adalah perangkat lunak (software) untuk perangkat mobile yang berbasis Linux dan Mencakup sebuah sistem operasi, aplikasi, dan middleware, Platform Android bersifat terbuka bagi Pengembangan serta banyak perangkat mobile lainnya yang mendukung Android. Android juga telah hadir dalam netbooks, tablet intemet (contoh ARCHOS 5), ebook reader, FrameFoto digital, dan banyak perangkat elektronik /ainnya. Bahkan telah dikembangkan konsep microwave berbasis ‘Android dan juga pengering maupun pencuci. Platform berbasis Android tidak mahal dan mudah dikembangkan, dan tersedia jutaan hingga miliaran pengguna potensial di seluruh dunia, serta memiliki keterbatasan yang lebih sedikit daripada platform lainnya. Platform Android masih terbilang ‘sangat baru dan muda, sehingga belum semua potens! Android terpenuhi. z Android berjalan pada Dalvik Virtual Machine (DVM), bukan pada Java Virtual Machine (JVM). OVM merypakan mesin virtual yang dikembangkan untuk meningkatkan efisiensi penggunaan banyak mesin virtual. DVM mengeksekusi format (.dex) yang memiliki tingkat optimasi yang baik dalam penggunaan memary footprint dan kompilasi. DVM didukung Linux kernel 2.6 yang andal dalam penanganan manajemen memori, manajemen proses, jaringan, driver model, dan keamanan. Perbedaan lain DVM merupakan “register base", sedangkan JVM adalah “stack base”. DVM didasain dan ditulis oleh Dan Bornstein dan beberapa engineers dari Google sehingga bisa dikatakan "Dalvik equals (Java) == fase”, artinya jika Dalvik sama dengan Java adalah salah. Android didistribusikan di bawah Lisensi Apache Software yang memungkinkan untuk distribusi kedua dan seterusnya, Sistem operasi yang mendasarinya dilisensikan dibawah GNU (General Public Lisensi) versi 2 yang dikenal dengan istilah “copyleft”. Sebagian besar pengembang menggunakan Eclipse yang tersedia secara bebas untuk merancang dan mengembangkan aplikasi Android. Eclipse adalah IDE paling populer untuk pengembangan Android karena memiliki Android plug in yang lersedia untuk memfasilitasi pengembangan Android dan mendapat dukungan Google untuk menjadi IDE pengembangan. Namun, hal ini tidak menutup kemungkinan pengembangan Android dengan menggunakan IDE lainnya seperti NetBeans. Aplikasi Android dapat dikembangkan pada sistem operasi Windows, MAC OS X, dan Linux. Pengenalan pengembangan aplikasi mabile (Android) dikembangkan oleh Android Inc. dan dibeli Google pada tahun 2005. Sistem operasi Android diluncurkan bersamaan dengan dibentuknya organisasi Open Handset Alliance (OHA) tahun 2007. Perusahaan yang terlibat dalam Open Handset Alliance, antara lain Motoralla, Samsung, LG, Sony Ericson, T-Mobile, Vodafone, Toshiba, dan Intel. 2. Sejarah Android Android, inc. didirikan di Palo Alto, California, pada buian Oktober 2003 oleh Andy Rubin, Rich Miner, Nick Sears, dan Chris White untuk mengembangkan perangkat seluler pintar yang lebih sader akan lokasi dan preferensi penggunanya. e@ Web dan Pera Kelas Xa Tujuan awal pengembangan Android adalah untuk mengembangkan sebuah sistem operasi canggin yang diperuntukkan bagi kamera digital, namun kemudian disadari bahwa pasar untuk perangkat tersebut tidak cukup besar, dan pengembangan Android lalu dialihkan bagi pasar telepon pintar untuk menyaingi Symbian dan Windows Mobile (iPhone Apple belum dirilis pada saat itu). Meskipun para pengembang Android adalah pakar-pakar teknologi yang berpengalaman, namun Android Inc. dioperasikan secara diam-diam, hanya diungkapkan bahwa para pengembang sedang menciptakan sebuah perangkat lunak yang diperuntukkan bagi telepon seluler. Google mengakuisisi Android Inc. pada tanggal 17 Agustus 2005, menjadikannya sebagai anak perusahaan yang sepenuhnya dimiliki aleh Google. Pendiri Android Inc. seperti Rubin, Miner, dan White tetap bekerja di perusahaan setelah diakuisisi oleh Google. Di Google, tim yang dipimpin oleh Rubin mulai mengembangkan’platform perangkat seluler dengan menggunakan kernel Linux. Google memasarkan platform tersebut kepada produsen perangkat seluler dan operator nirkabel, Pada tanggal 5 November 2007, Open Handset Alliance (OHA) didirikan. OHAadalah konsorsium dari perusahaan-perusahaan teknologi seperti Google, produsen perangkat’seluler seperti HTC, Sony, dan Samsung, operator nirkabel seperti Sprint Nextel dan T-Mobile, serta produsen chipset seperti Qualcomm dan Texas Instruments. OHA bertujuan untuk mengembangkan standar terbuka bagi perangkat seluler. ‘Saat itu, Android diresmikan sebagai produk pertamanya; sebuah platform perangkat seluler yang menggunakan kernel Linux versi 2.6. Telepon seluler komersial pertama yang menggunakan sistem operasi Android adalah HTC Dream, yang diluncurkan pada tanggal 22 Oktober 2008. Pada tahun 2010, Google merilis seri Nexus; perangkat telepon pintar dan tablet dengan sistem operasi Android yang diproduksi oleh mitra produsen telepon seluler seperti HTC, LG, dan Samsung. HTC bekerja sama dengan Google dalam merilis produk telepon pintar Nexus pertama, yakni Nexus One. Seri ini telah diperbarui dengan perangkat yang lebih baru, misalnya telepan pintar Nexus 4 dan tablet Nexus 10 yang diproduksi oleh LG dan Samsung. Pada tanggal 15 Oktober 2014, Google mengumumkan Nexus 6 dan Nexus 9 yang diproduksi oleh Motorola dan HTC. Sejak tahun 2008, Android secara bertahap telah melakukan sejumiah pembaruan untuk meningkatkan kinerja sistem operasi, menambahkan fitur baru, dan memperbalki bug yang terdapat pada versi sebelumnya. Setiap vers! utama yang dirlis dinamakan secara elfabetis berdasarkan nama-nama makanan pencuci mulut atau cemilan bergula; misainya, versi 1.5 bemama Cupcake, yang kemudian diikuti oleh versi 1.6 Donut. Versi terbaru adalah 7.0 Nougat, yang dirllis pada ‘9 Maret 2018. Tabel 5.1 Nama Rilis Setiap Versi Android Beserta Kode API-nya ene a J Cnr 7 Nougat 6 Marshmallow 19 Agustus 2015 5 Loli * [16 Oktober 2014 21 44x! KitKat 31 Oktober 2013 19 4:3.x Jelly Bean 24 Juli 2013, 18 42x Jelly Bean 13 November 2012 a7 41x Jelly Bean 9 Juli 2012 16 4.0.3-4.0.4 Ice Cream Sandwich 16 Desember 2011 45 3.2 Honeycomb: 45 Juli 2011 13 34 Honeycomb 40 Mei 2011 12 2.3.3-2.3.7 Gingerbread 9 Februari 2011 10 ‘| Gingerbread 6 Desember 2010 9 Froyo 20 Mei 2010 8 Eclair 26 Oktober 2009 7 Donut 15 September 2009 4 Cupcake 30. 2009 3 ea teehee a) 3. DVM (Daivik Virtual Machine) dan JVM (Java Virtual Machine) ‘Salah satu elemen utama Android adalah Dalvik Virtual Machine (DVM), daripada menggunakan Java Virtual Machine (JVM) tradisional seperti, Java ME (Java Mobile Eaition). Android menggunakan VM (Virtual Machine) yang didesain sendiri untuk memastikan banyak instan yang dapat berjalan secara efisien pada sebuah perangkat tunggal. DVM adalah perangkat yang ditangani dengan kernel Linux untuk menanganifungsionalitas level rendah seperti kearnanan, thread, dan manajemen proses maupun memori, DVM juga dapat untuk menuliskan aplikasi dengan C/C++ yang dapat berjalan Secara langsung di bawah Sistem operasi Linux. Jika dibutuhkan kecepatan dan efisiensi C/C++ untuk pembuatan aplikasi, Android menyediakan fitur yang dikenal dengan nama Native Development ‘Kit(NDK). NDK memungkinkan pengembang untuk membuat library C++ menggunakan library libc dan lim yang memungkinkan untuk akses ke OpenGL. Seniua akses layanan sistem dan perangkat keras Android diatur menggunakan Dalvik sebagai tingkal perantara. Dengan menggunakan sebuah ‘OVM untuk eksekusi aplikasi host, pengembang memiliki sebuah layer abstraksi yang memastikan bahwa mereka tidak harus khawatir untuk implementasi pada perangkat keras (hardware) yang berbeda. DVM menjalankan sebuah file Dalvik yang dapat dieksekusi, sebuah format yang dioptimalkan untuk memastikan memori minimal. Pengembang membuat dex yang dapat dijalankan dengan mentransformasikan file kelas (.class) bahasa Java menggunakan tool yang diberikan dalam SDK. OVM didesain dan ditulis oleh Dan Bornstein untuk Google. Kode dikompilasi menjadi instruksi berbahasa mesin independen yang dikenal dengan byte code yang kemudian dijalankan oleh DVM pada perangkat mobile. Walaupun format byte code sedikit berber, Dalvik secara esensinya adalah sebuah JVM yang dioptimalkan untuk kebutuhan memori fendah, yang memungkinkan instan VM untuk berjalan satu kali, dan memanfaatkan keamanan Serta proses isolasi seperti pada sistem operasi Linux. DVM adalah implementasi Java ala Google, seperti yang telah dikemukakan sebelumnya, dioptimalkan untuk perangkat mobile. Semua kode yang dituliskan untuk Android ditulis dalam bahasa Java dan berjalan menggunakan VM. Dalvik berbeda dengan Java tradisional dalam dua hal penting, yakni sebagai berikut. @. DVM menjalankan file dex yang dikonversikan waktu kompilasi dari fle standar .class dan file Jar, file dex lebih padat dan efisien daripada file class, sebuah pertimbangan Penting yang ‘ditargetkan Android untuk memori yang terbatas dan perangkat dengan tenaga baterai. b. Library core Java yang ada di Android berbeda dengan library Java Standard Edition (Java SE) dan Library Java Mobile Edition (Java ME) ‘Gambaran utama implementasi dari JVM ala Dan Bornstein yang menuliskan DVM sebagai berikut. @. DVM menggunakan file class Java dan mengombinasikan menjadi satu atau lebih file Dalvik Executable (.dex), yang menggunakan kembali informasi duplikat dari banyak file class yang Secara efektif mengurangi kebutuhan ruang (yang tidak dikompresi) menjadi separuh dari sebuah file .jar tradisional. Sebagai contoh file dex dari aplikasi browser web pada Android ddalah sekitar 200 K yang ekuivalen dengan versi jar yang tidak dikompresi sekitar 00 K. File .dex dari suatu aplikasi alarm jam adalah sekitar 50K, sementara ukuran versi jar dua kali lipatnya. b. Google telah memperbaiki garbage collection dalam DVM, dengan memilih untuk menghilangkan ‘kompiler JIT (Just-in-Time) pada rilis yang terbaru. ¢. DVM menggunakan semacam generate untuk kode assembly yang berbeda, di mana ia menggunakan peregister sebagai unit penyimpanan data utama. Perbandingen lainnya untuk konfigurasi perangkat (device), dimana Java ME menggunakan dua Class perangkat mikro dan menawarkan solusi standar yang berbeda untuk masing-masingriya. Di sisi lain, Android hanya menerapkan satu model saja, yang tidak akan berjalan pada perangkat fow- end, melainkan sampai konfigurasi perangkat tersebut ditingkatkan. Android lebih mudah dipahami dibandingkan dengan Java ME kerena Java ME memiliki model UI yang banyak untuk masing-masing konfigurasi perangkatnya, bergantung pada fitur-fitur yang didukung perangkat seperti MIDiets, Xlets, AWT, dan Swing. JSR untuk masing-masing spesifikas| Java ME sulit untuk diikuti. Membutuhkari waktu yang panjang untuk menjadi matang dan menemukan implementasinya juga sulit ee |Web dan Kelas Xt DVM diciptakan lebih optimal dan lebih responsi jika dibandingkan dengan JVM standar yang didukung pada sebuah perangkat yang teleh dikonfigurasikan secara sama. DVM kompatibel untuk Java karena DVM selain menjalankan byte code dex juga menjalankan kode Java, selagi Java dikompilasi menjadi standar file class Java, yang tidak mungkin hanya menginterpretasi run time kode Java dengan menggunakan DVM. Bila dibandingkan dengan dukungan Java SE ada CDC, maka dukungan Android untuk Java SE sedikit lebih lengkap, kecuall AWT dan Swing. Sepert,teiah dijelaskan sebelumnya bahwa Android memiliki pendekatan Ul-nya sendiri dan Ul Android memiliki platform Ul yang lebih canggih seperti Micrasoft Silverlight dan Sun's JavaFX. Aplikasi pada sebuah perangkat Android seperti T-Mobile G1 atau Motorola Droid dikembangkan menggunakan Java dan dapat dijalankan menggunakan OVM. Arsitektur Android Sistem gperasi Android merupakan sekumpulan komponen yang terbagi ke dalam lima bagian dan empat lapisan seperti ditunjukkan pada gambar berikut. Gambar 5.1 Arsitektur sistem operasi Android a. Application Application merupakan lapisan teratas yang di dalamnya terdapat berbagai aplikasi yang digunakan langsung oleh user. Seperti aplikasi untuk metakukan panggilan suara, mengakses intemet, game, dan lainnya. Hanya pengembang yang biasanya mengakses lapisan lainnya, seperti para programmer Android di Google, pengembang aplikasi, dan pengembang driver hardware. b. Application framework Pada lapisan ini banyak ditemukan aplikasi dasar yang mendukung lapisan aplikasi di atas seperti program alokasi sumiber daya, telepon, pengolah proses, dan pengolah lokasi perangkat. Pengembang aplikasi memiliki akses penuh pada lapisan ini, Akses ini memungkinkan pengembang untuk mengembangkan aplikasi yang lebih besar dan kompleks dengan memanfaatkan semua sumber daya yang tersedia pada perangkat. Framework menyediakan class yang digunakan untuk membuat aptikasi Android. Selain itu, juga menyediakan abstraksi generik untuk akses okat ketas dan mengatur Ul serta sumber daya (resource) aplikasi. Komponen-komponen yang termasuk di dalam application frameworks adalah view system, content provider, window manager, notification system, location system, resource providers, telephony manage, package ‘manager, dan activity manager. c. Library Library merupakan kumpulan program atau subprogram yang dapat digunakan untuk mengolah beragam data, seperti media framework yang dapat digunakan untuk memainkan dan merekam beragam format audio, video, dan gambar. Library lainnya ada juga WebKit sebagai fondasi bagi aplikasi web browser untuk mengakses atau menampilkan halaman web atau menjalankan program berbasis web. Masih pada lapisan yang sama juga terdapat bagian Android Runtime, berisikan kumpuian library Java, Para pengemibang aplikasi Android membangun aplikasi mereka menggunakan bahasa pemrograman Java. Di dalamnya juga terdapat mesin virtual Dalvik. Mesin virtual adalah sebuah aplikasi yang dapat berjalan seperti layaknya sistem operasi, Mesin virtual dapat dijalankan pada perangkat yang memiliki sistem operasi berbeda, seperti menjalankan emulator Android pada sistem operasi Windows. Sistem operasi Android menggunakan mesin virtual untuk menjalankan setiap aplikasi. wast ri clap pear reepina ) Mesin virtual adalah hal ini penting karena beberapa alasan berikut 4) Setiap aplikasi yang berjaian bersifat independen, tidak tergantung pada aplikasitainnya. 2) Jika aplikasi berrasalah, maka hal in tidak akan memengarunl yang lainnya 3) Mekanisme ini menyederhanakan pengelolaan memori, d. Kernel Kernel sebagal lapisan terbawah pada sistem operasi Android merupakan fondasi utama dari semua lapisan di atasnya. Saatini kemel Android telah sampai pada versi3.6, yang di dalamnya terdapat program pengelolaan memori, Keamanan, pengelolaan daya, dan sejumlah driver: Driver merupakan program yang digunakan untuk mengendalikan (rardware termasuk sensor yang terhubung ke perangkat. Android bergantung pada Linux versi 2.6 untuk layanan isle) int seperti Keamanan, manajemen memori, manajemen proses, tumpukan jeringan, dan model driver. Kernel juga bertindak sebagai lapisan antara hardware dan seluruh software, e. DVM DVM adalah mesin virtual yang digunakan oleh sistem operasi Android untuk menjalankan berbagai aplikest Android. Walaupun same-sama menggunakan basis Java. Dalvik dikembangkan khusus untuk menjalankan aplikasi berbasis Java dengan menggunakan tebin ‘sedikit RAM. Dalvik adalah perangkat lunak sumber terbuka (open source). Dalvik awainya dikembangkan oleh Dan Bornstein, yang namanya diambil dari nama desa Dalvik di Islandia, tempat nenek moyangnya berasal. Dalam implementasinya, mesin Dalvik menjalankan aplikasi berbasis Java dalam format#.dex yang dihasilkan dari proses kompilasi byte code Java dalam format *.class. Alat pengembangan aplikasi Android ‘Aplikasi Android adalah aplikasi yang dikembangkan dengan Java sebagal bahasa pembertukny. Program ini dinasikan dari hasil komnpilasi program Java menjadi file “dex sebelum akhimya Gipeketkan menjadi fle * apk. Android dapat dikembangkan untuk membual berbagal macar aplikasi, ‘nulai dari epikasi yang berhubungan dengen user ataupun sistem, aplikasi yang sering digunakan oleh user (aplikasi umum), hingga aplikasi untuk kalangan khusus. Sebelum membangun aplikasi Android, pengembang dinarapkan memahami Kompanen-kemponen pada aplikasi Android. Dalam pengembangan aplkasi Androis terdapal beberapa Komponen antara fain activity, service, broadcast receiver, content provider, intent, dan AndroidManifest. a. Activity ‘Activity merupakan Komponen yang memungkinkan aplikasi untuk memiliki antarmuka (user interface). Sebagai contoh, apikasi pesan (SMS) dapat menampilkan dafter pesan pada user. Walaupun hanya sekadar antarmuka, setiap activity yang ada pada aplikasi bersifal independen satu same lainnya, Independens! ini memungkinkan sistem/aplikasi lain untuk memangal activity dari aplikasi ini ataupun activity lainnya jika diperbolehkan. Activity dapat dijalankan dengan menggunakan method startActvity() dan startActvityForresult) dengan memberlkan objek intent. Objek Intent digunakan sebagai penghubung antara activity saat inl dengan activity yang akan dijalankan. b. Service Service adalah komponen aplikasi yang berjalan di latar belakang. Komponen ini tidak memiliki antarmuka, Service umumnya digunakan untuk menjalankan operasi-operasi yang panjang/lama atau proses jarak jauh di sistem lainnya. Sebagai contoh aplikasi untuk mengambil data dalam jaringan ataupun aplkasi yang dapat memainkan musik di latar belakang tanpa harus menatian ‘akses user pada aplikasi Iain, Komponen service dapat dijalankan dengan memberkkan objek Intent pada method startService() atau bindService(). c. Broadcast receiver Broadcast receiver adalah komponen aplikasi yang dapat digunakan untuk memproses event yang terjadi pada sistem Android. Event ini bisa berasal dari sistem, user, atoupun sensor yang terpasang pada perangkat, seperti event pada seat layar dimatkan oleh sister, sistem kehabisan beterai, foto diambil oleh kamera, dan lokasi perangkat terdeteksi oleh sensor GPS. Web dan = Kelas X11 Sama seperti service dan content provider, komponen inijuga tidak memiliki antarmuka. Walaupun tidak memiliki antarmuka, komponen ini masin dapat digunakan untuk menampilkan notifikasi pada status bar. Aktivasi broadcast receiver dapat dilakukan melalui objek Intent yang diberikan pada mathod sendBroadcast(), sendOrderedBroadcast(), dan sendStickyBroadcast(). ‘ |. Content provider. Content provider adalah jenis komponen yang dapat digunakan sebagai sumber data bagi aplikasi Iainnya. Sumber data ini bisa berupa basis data SQLite, file, file diintemet, ataupun penyimpan data lainnya yang dapat diakses oleh aplikasi lain. Contohnya aplikasi Contacts pada Android merupakan salah satu aplikasi yang menerapkan komponen content provider, sehingga aplikasi Jain yang mendapat izin dapat membaca dan memodifikasi data kontak melalui aplikasi Contacts. ‘Method query() paca objek ContentResolver dapat digunakan untuk mengakses data padaaplkas! yang memiliki content provider. Terdapat banyak too! (alat) yang saat ini dapat digunakan untuk mengembangkan aplikasi pada perangkat Android, Beberapa macam alat pengembang aplikasi Android sebagai berikut. a. IDE (Integrated Development Environment) ‘Android Studio IDE adalah tempat di mana Anda akan menulis kode program. Aplikas! ini bersifat ‘open source. . Java SE Development Kit (JDK) Program Android umumnya dibuat menggunakan behasa Java, oleh karena itu dibutuhkan JDK untuk mengembangkan aplikasi Android, ¢. ADT (Androld Development Tools) ADT adalah plugin yang didesain untuk IDE Eclipse yang memberikan kemudahan dalam mengembangkan aplikasi. Dengan menggunakan ADT untuk Eclipse akan memudahkan kita dalam membuat aplikasi proyek Android, membuat GUI aplikasi, dan menambahkan komponen- komponen lainnya. Dengan menggunakan ADT dapat dibuat package Android (.apk) yang digunakan untuk distribusi aplikasi Android yang telah dirancang. |. Android SDK (Software Development Kit) Android SDK adalah too! AP! (Application Programming Interface) yang dibutuhkan untuk mulal mengembangkan aplikasi pada platform Android menggunakan bahasa pemrograman Java. Android merupaken subset perangkat lunak untuk ponse! yang meliputi sistem operasi middleware, dan aplikasi kunci yang diriis oleh Google. Saat ini disediakan Android SDK sebagai lat bantu dan API untuk mulai mengembangkan aplikasi pada platform Android menggunakan behasa pemrograman Java. Sebagai platform aplikasi netral, Android member kesempatan untuk membuat aplikasi yang dibutuhkan bukan merupakan aplikasi bawaan smartphone. Software SDK Android dapat diunduh langsung dari situs resmi pengembang SDK Android di http://www. developer.android.com. . Android SDK platform SDK platform berisi peranti lunak dan utlitas bantuan untuk tiap versi Android. Anda membutuhkan satu atau lebih SDK platform, tergantung versi Android yang menjadi target aplikasi. f. HTMLS HTML5 adalah bahasa penanda yang digunakan untuk mengatur dan menampilkan dokumen pada halaman web. Standamya telah difinalisasi dan dipublikasikan pada 28 Oktober 2014 oleh World Wide Web Consortium (W3C), ini merupakan revisi kelima dari stander HTML. Sebelumnya, HTML4 telah dipublikasikan pada tahun 1997. Pada revisi ini ada banyak dukungen kemampuan multimedia yang ditambahkan. HTMLS adalah teknologi untuk mengembangkan aplikasi web yang dapat dijalankan pada berbagai perangkat tidak hanya web, telapi juga desktop termasuk pada perangkat rnobile. Kemampuan untuk berjalan pada banyak platform ini dikenal dengan istilah lintas platform (cross platform). Secara garis besar, perubahan menonjol pada HTMLS adalah dengan ditambahkannya tag