BAB 2
LANDASAN TEORI
Pada bab ini akan diuraikan dasar perancangan permainan domino gaple pada platform Android. Landasan teori yang diuraikan meliputi penjelasan mengenai algoritma Minimax, perkembangan mobile game, dan platform Android.
2.1 Domino Gaple Domino gaple adalah permainan kartu yang dimainkan oleh 4 orang sekaligus. Tujuan permainan kartu ini adalah menurunkan kartu yang ada di tangan hingga habis. Permainan domino gaple ini menggunakan kartu domino yang berjumlah 28 lembar. Masing-masing pemain mendapatkan 7 kartu. Pemain yang memiliki kartu balak nol diwajibkan mengeluarkan kartu tersebut sebagai awal permainan. Pemain selanjutnya diharuskan menurunkan kartu yang ada ditangan sesuai dengan angka-angka yang tersaji di kedua sisi kartu yang ditawarkan. Jika salah satu pemain tidak memiliki kartu yang ditawarkan, maka pemain selanjutnya berhak untuk melanjutkan permainan.
Gambar 2.1 Permainan domino gaple
Universitas Sumatera Utara
7
2.1.1 Peraturan dan strategi permainan domino gaple Dalam peraturan umum bermain gaple, pemain yang dinyatakan menang adalah pemain yang telah menghabiskan seluruh kartu di tangannya. Sedangkan pemain kedua, ketiga, dan keempat, akan dihitung sisa angka yang masih dipegang. Pemain yang memegang sisa angka terbesar dianggap sebagai pihak yang kalah. Namun jika kartu setiap pemain tidak dapat lagi diturunkan, maka pemenangnya adalah yang memiliki kartu dengan nilai angka terkecil. Tetapi jika terdapat dua atau lebih pemain memiliki jumlah nilai angka yang sama, maka pemenangnya adalah pemain dengan jumlah sisa kartu paling sedikit. Apabila dua orang pemain memiliki jumlah nilai angka yang sama, jumlah sisa kartu sama, maka pemenangnya adalah pemain yang tidak memiliki kartu balak di tangannya.
Gambar 2.2 Kartu domino beserta nilainya
Universitas Sumatera Utara
8
Ada beberapa teknik yang biasanya digunakan orang dalam bermain domino gaple, yaitu hitung kartu, adu kartu, dan tahan balak. Teknik hitung kartu adalah teknik pemain yang menghapal dan menghitung jumlah kartu yang telah diturunkan agar dapat menurunkan kartu yang tepat. Selain itu pemain juga harus dapat menganalisa kartu yang ada di tangan lawannya. Teknik adu kartu adalah teknik permainan dengan membuat angka kembar di kedua belah sisi, sehingga pemain selanjutnya mendapatkan kemungkinan kecil untuk melanjutkan permainan. Teknik tahan balak merupakan teknik menyimpan kartu balak untuk mengendalikan permainan.
2.1.2
Jenis permainan domino gaple
Selain bermain sendiri-sendiri, variasi lain permainan domino yaitu dengan cara berpasang-pasangan, atau bermain mandan. Bermain mandan biasa dilakukan oleh masyarakat Minangkabau, Aceh, dan Bugis. Bermain dengan cara ini, mengharuskan pemain untuk tidak hanya memperhatikan kartunya sendiri, tapi juga harus memikirkan kartu mandannya agar bisa memenangkan permainan.
2.2 Kecerdasan Buatan
Kecerdasan buatan atau Artificial Intelligence merupakan bagian dari ilmu pengetahuan komputer yang khusus ditujukan dalam perancangan otomatisasi tingkah laku cerdas dalam sistem kecerdasan komputer. Sistem memperlihatkan sifat-sifat khas yang dihubungkan dengan kecerdasan dalam kelakukan atau tindak-tanduk yang sepenuhnya bisa menirukan beberapa fungsi otak manusia, seperti pengertian bahasa, pengetahuan, pemikiran, pemecahan masalah dan lain sebagainya (Kristanto, 2004).
Pengertian lain menyebutkan bahwa kecerdasan buatan adalah
salah satu
bagian ilmu komputer yang membuat agar mesin (komputer) dapat melakukan pekerjaan seperti dan sebaik yang dilakukan oleh manusia (Kusumadewi, 2003).
Universitas Sumatera Utara
9
Dari beberapa pengertian di atas, dapat ditarik kesimpulan bahwa kecerdasan buatan merupakan bagian dari ilmu komputer yang merancang otomatisasi mesin yang proses berfikirnya dan melakukan pekerjaan menyerupai manusia.
Meskipun kecerdasan buatan dapat
berfikir dan melakukan pekerjaan
selayaknya manusia, namun pada dasarnya kecerdasan buatan berbeda dengan kecerdasan alami yakni kecerdasan manusia. Berikut ini merupakan kelebihan kecerdasan buatan dan kecerdasan alami.
Tabel 2.1 Kelebihan kecerdasan buatan dan kecerdasan alami. (Sumber: Analisis Dan Implementasi Algoritma Minimax Dengan Optimasi Alpha Beta Pruning Pada Permainan Five In Row, 2010)
Kelebihan Kecerdasan Buatan
Kelebihan Kecerdasan Alami
1. Kecerdasan buatan lebih tahan lama
1. Kecerdasan alami bersifat kreatif.
dan
konsisten,
bahkan
dapat
Kecerdasan alami dapat berkembang
dikatakan permanen sejauh program
dengan
dan sistemnya tidak diubah.
menciptakan kreasi baru.
2. Kecerdasan diduplikasi
buatan dan
lebih
mudah
disebarluaskan,
mudah
2. Kecerdasan manusia
alami
dan
dapat
memungkinkan
untuk
menggunakan
berbeda dengan kecerdasan alami
pengalaman
yang membutuhkan proses belajar
Sedangkan pada kecerdasan buatan
mengajar
harus bekerja dengan input-output
untuk
mentransfer
kecerdasan. 3. Kecerdasan
secara
langsung.
simbolik. buatan
dapat
didokumentasi. 4. Kecerdasan buatan cenderung dapat mengerjakan perkerjaan lebih baik
3. Manusia
dapat
memanfaatkan
kecerdasannya secara luas, tanpa batas. Sedangkan kecerdasan buatan memiliki batasan.
dan lebih cepat dibanding dengan kecerdasan alami.
Universitas Sumatera Utara
10
Seperti kebanyakan bidang sains lainnya, Kecerdasan Buatan dapat dipilah menjadi sejumlah sub-disiplin. Berikut sejumlah bidang terapan utama terhadap kecerdasan buatan: 1. Sistem Pakar (Expert System) Sistem Pakar adalah suatu perangkat lunak yang menyimpan pengetahuan seorang pakar, dengan demikian komputer tersebut akan memiliki keahlian layaknya seorang pakar. 2. Pengolahan Bahasa Alami (Natural Language Processing) Salah satu tujuan jangka panjang kecerdasan buatan adalah membuat program yang memiliki kemampuan untuk memahami bahasa manusia. Dengan Pengolahan Bahasa Alami ini, diharapkan dikemudian hari manusia dapat berkomunikasi dengan komputer dengan menggunakan bahasa sehari-hari. 3. Pengenalan Ucapan (Speech Recognition) Dengan teknologi ini, diharapkan manusia nantinya dapat berbincang-bincang dengan komputer. 4. Pemodelan Kinerja Manusia Teknologi ini merupakan upaya pengenalan citra atau objek visual pada komputer. Dengan mengunakan alat sensor atau scanner sebagai indra, maka komputer dapat mengenali objek apa yang ditangkap oleh indranya. 5. Permainan (Game) Mengembangkan
berbagai macam
bentuk
permainan
interaktif
yang
cerdas. Diasumsikan dengan teknologi tersebut dapat menarik minat para penggemar permainan.
2.3 Algoritma Minimax Minimax adalah salah satu algoritma yang sering digunakan untuk game kecerdasan buatan seperti tik-tak, yang menggunakan teknik Depth First Search (DFS). Algoritma Minimax akan melakukan pengecekan pada seluruh kemungkinan yang ada, sehingga akan menghasilkan pohon permainan yang berisi semua kemungkinan tersebut.
Universitas Sumatera Utara
11
Keuntungan
penggunaan
algoritma
Minimax
adalah
mampu
menganalisis
kemungkinan posisi permainan untuk menghasilkan keputusan terbaik dengan mencari langkah yang akan membuat lawan mengalami kerugian (Jannah, 2010).
Tujuan sebenarnya algoritma Minimax digunakan pada permainan yaitu untuk memperkirakan kartu apakah yang dapat dikeluarkan pada 1 langkah ke depan (Kusumadewi, 2003).
Jika pemain memilih suatu langkah, maka pemain akan memilih langkah yang akan menghasilkan suatu posisi yang bagus. Kita dapat menganggap bahwa pemain akan memilih langkah yang akan menuntunnya pada posisi terbaik. dengan kata lain, ketika pemain mendapat giliran bermain maka pemain akan mencoba memaksimalkan nilainya, perhatikan gambar 2.3.
Gambar 2.3 Langkah pemain pada algoritma minimax (Sumber: Artificial Intelligence for Games, 2006)
Ketika lawan mendapat giliran bermain, pemain akan mengganggap bahwa lawan akan memilih langkah yang akan memberikan pemain posisi terburuk yang tersedia. Lawan sedang berusaha meminimalkan nilai dari pemain, perhatikan gambar 2.4. Dalam pengimplemensian pencarian DFS, Algoritma Minimax melakukan pencarian pada pohon. DFS akan menelusuri simpul terdalam lebih dahulu. Setelah simpul akar dibangkitkan, algoritma ini akan membangkitkan simpul pada tingkat kedua, yang akan dilanjutkan pada tingkat ketiga, dst.
Universitas Sumatera Utara
12
Gambar 2.4 Langkah lawan pada algoritma minimax (Sumber: Artificial Intelligence for Games, 2006)
Dalam repersentasi pohon pada algoritma Minimax, terdapat dua jenis node, yaitu min dan max. Max akan memilih langkah dengan nilai tertinggi dan min akan memilih langkah dengan nilai terendah. Untuk proses dan cara kerja algoritma yang lebih jelasnya lagi, dapat dilihat pada gambar 2.5 yang merepresentasikan cara kerja algoritma Minimax.
Gambar 2.5 Ilustrasi cara kerja algoritma minimax (Sumber: Artificial Intelligence Illuminated, 2004)
Dari gambar 2.5, proses pencarian dimulai dari jalur paling
kiri terlebih
dahulu, sehingga DFS akan menelusuri simpul paling kiri bawah yaitu 5. Nilai 5 disimpan sebagai nilai maksimum sementara karena berada di tingkat max, kemudian
Universitas Sumatera Utara
13
DFS merunut balik dan menelusuri simpul yang bertetangga dengan simpul 5 yaitu simpul 2. Karena nilai 5 lebih besar dari nilai 2, maka nilai 2 tidak disimpan. Lalu DFS akan merunut balik ke tingkat min sehingga nilai 5 yang diperoleh akan disimpan sebagai nilai minimum sementara. Untuk simpul 1 dan 3, nilai 3 yang akan disimpan karena merupakan nilai maksimum di tingkat max. Saat mencapai tingkat min, sudah ada nilai minimum sementara yaitu 5, namun karena nilai 3 lebih kecil daripada nilai 5, maka nilai 5 akan digantikan dengan nilai 3. Nilai 3 akan disimpan sebagai nilai maksimum sementara di tingkat paling atas karena merupakantingkat max. Lalu penelusuran jalur kanan akan dilakukan dengan cara yang sama seperti penelusuran jalur kiri sehingga diperoleh nilai 6. Karena nilai maksimum sementara pada tingkat paling atas adalah nilai 3, maka nilai 3 akan digantikan dengan nilai 6 karena nilai 6 lebih besar daripada nilai 3. Dengan demikian, jalur yang akan dipilih menggunakan algoritma Minimax adalah jalur sebelah kanan karena untuk kondisi terburuknya, kita akan mendapatkan nilai 6 sedangkan jika kita memilih jalur kiri, kita hanya akan mendapatkan nilai 3.
Berikut garis besar algoritma minimax secara umum :
Cari langkah dengan nilai maksimum IF langkah tersebut merupakan langkah kemenangan THEN pilih lagkah tersebut. ELSE FOR EACH kemungkinan langkah yang ada Cari langkah lawan yang bernilai minimum.
RETURN nilai dari langkah tersebut. 2.3.1
Penelitian terdahulu
Terdapat beberapa penelitian terdahulu mengenai algoritma minimax, di antaranya adalah:
Universitas Sumatera Utara
14
Tabel 2.2 Penelitian Terdahulu
No.
Judul Penelitian
Tahun Penelitian
Nama Peneliti
Aplikasi Capsah 1
Banting dengan Algoritma
Keterangan Waktu pelacakan sangat
2008
Billy Kurniawan
lama pada saat kombinasi kartu yang banyak
Minimax Analisis
2
Dan
Minimax tidak efisien
Implementasi
digunakan secara tunggal
Algoritma
sehingga
Minimax Dengan Optimasi
Alpha
Beta
Pruning
Pada
Permainan
2010
Nur Jannah
algoritma
diperlukan lain
untuk
mengoptimalkannya.
FIVE IN ROW Analisis
Minimax tidak efisien
Implementasi
digunakan secara tunggal
Kecerdasan
sehingga
Buatan 3
Dan
Pada
Permainan
algoritma 2011
Checker
Muhammad
diperlukan lain
untuk
mengoptimalkannya.
Aidil Akbar
Menggunakan Algoritma Minimax Dengan Negascout Analisis
Tingkat
Dan
Implementasi Algoritma 4
Backtracking Pada
Permainan
Congklak
2010
Adhhal Huda Bakri
kesulitan
agen
yang
menggunakan
algoritma
Backtracking
sampai penelusuran level maksimum 10 adalah sulit dengan
persentase
kehandalan agen 75%.
Universitas Sumatera Utara
15
2.4 Mobile Game Mobile games secara garis besar diartikan sebagai permainan yang dimainkan pada perangkat mobile seperti telepon genggam, PDA, smartphone, ataupun perangkat permainan portabel.
Penelitian, pengembangan, dan pengujian terhadap mobile games telah membawa masalah dan pertanyaan yang tidak bisa diselesaikan oleh model desain lama. Mobile games mengubah hubungan antara manusia dan komputer yang berakibat tidak hanya dari cara bermain tetapi desain antarmuka dan juga interaksi struktur juga berubah. Kegiatan pemain berubah. Pemain tidak duduk di depan perangkat mereka lagi tetapi benar-benar bisa bergerak bebas sambil bermain (Grueter et al, 2005).
2.5 Sistem Operasi Android
Salah satu sistem operasi yang banyak digunakan untuk telpon pintar saat ini adalah Android. Hal ini didukung dengan beberapa vendor besar yang mengoperasikan sistem operasi tersebut pada produk yang mereka produksi, seperti Samsung, HTC, Sony, LG. Sehingga menjadikan Android lebih cepat populer dibandingkan dengan sistem operasi telpon pintar lainnya.
Android didesain sebagai platform yang open source untuk perangkat mobile. Android sendiri mencakup sistem operasi, middleware, dan aplikasi. Android sendiri menyediakan tools dan framework untuk membuat dan mengembangkan aplikasi. Salah satu contoh tools untuk membuat aplikasi Android adalah Android SDK (Software Development Kit) yang memungkinkan pengembang aplikasi ber-platform android membuat aplikasi menggunakan bahasa pemrograman Java. Selain itu ada Cocos2D yang memungkinkan pengembang aplikasi membuat aplikasi menggunakan bahasa pemrograman C++.
Universitas Sumatera Utara
16
Awalnya, Google Inc. membeli Android Inc., pendatang baru yang membuat peranti
lunak
untuk
ponsel.
Kemudian
untuk
mengembangkan
Android,
dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan peranti keras, peranti lunak, dan telekomunikasi, termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia. Pada saat perilisan perdana Android, 5 November 2007,
Android
bersama
Open
Handset
Alliance
menyatakan
mendukung
pengembangan standar terbuka pada perangkat seluler. Di lain pihak, Google merilis kode–kode Android di bawah lisensi Apache, sebuah lisensi perangkat lunak dan standar terbuka perangkat seluler.
Di dunia ini terdapat dua jenis distributor sistem operasi Android. Pertama yang mendapat dukungan penuh dari Google atau Google Mail Services (GMS) dan kedua adalah yang benar–benar bebas distribusinya tanpa dukungan langsung Google atau dikenal sebagai Open Handset Distribution (OHD).
Smartphone pertama yang menggunakan sistem operasi Android adalah Nexus One yang menggunakan Android versi 1.0. Produk tersebut diproduksi oleh HTC Corp., diperkenalkan sekitar September 2007 dan mulai dipasarkan pada 5 Januari 2008. Pada tahun 2009 perangkat berbasis Android mengalami perkembangan. Lebih dari 20 jenis perangkat bergerak menggunakan sistem operasi ini. Sudah banyak versi Android yang dirilis sejak tahun 2009, antara lain versi 1.0, 1.1, 1.5 dengan kode nama Cupcake, 1.6 dengan kode nama Donut, 2.0 dan 2.1 dengan kode nama Eclaire, 2.2 dengan kode nama Frozen Yogurt (Froyo), 2.3 dengan kode nama Gingerbread, 3.0, 3.1, dan 3.2 dengan kode nama Honeycomb, 4.0 dengan kode nama Ice Cream Sandwich, 4.1, 4.2, dan 4.3 dengan kode nama Jelly Bean, dan yang terakir rilis adalah versi 4.4 dengan kede nama KitKat.
Dari sekian banyak versi Android yang ada dipasaran, Android versi Honeycomb dirancang khusus untuk tablet. Android versi ini mendukung ukuran layar yang lebih besar. User Interface pada Honeycomb juga berbeda karena sudah didesain untuk tablet. Honeycomb juga mendukung multi prosesor dan juga akselerasi perangkat keras (hardware) untuk grafis. Tablet pertama yang dibuat dengan menjalankan Honeycomb adalah Motorola Xoom. Selain itu, Android versi Ice Cream
Universitas Sumatera Utara
17
Sandwich, Jelly Bean dan KitKat didesain untuk dapat dijalankan pada smartphone maupun tablet. Daftar versi-versi Android yang telah rilis dapat dilihat pada Tabel 2.3.
Tabel 2.3 Versi-versi Android
Platform
Nama Kode
API Level
Tanggal Rilis
Android 1.0
1
September 2007
Android 1.1
2
9 Februari 2009
Android 1.5
Cupcake
3
30 April 2009
Android 1.6
Donut
4
15 September 2009
5
26 Oktober 2009
Android 2.0 Android 2.0.1
Eclaire
Android 2.1 Android 2.2 Android 2.3 - 2.3.2 Android 2.3.3-2.3.7
7 Frozen Yogurt Gingerbread
Android 3.0 Android 3.1
Android 4.0.3
8
20 Mei 2010
9
6 Desember 2010
10 11
Honeycomb
Android 3.2 Android 4.0 - 4.0.2
6
22 Februari 2011
12 13
Ice Cream Sandwich
14
19 Oktober 2011
15
Android 4.1
Jelly Bean
16
27 Juni 2012
Android 4.2
Jelly Bean
17
13 November 2012
Android 4.3
Jelly Bean
18
24 July 2013
Android 4.4
KitKat
19
3 September 2013
Dari tabel tersebut dapat dilihat terdapat perubahan API (Application Programming Interface) level. Setiap API menunjukkan revisi dari framework pada platform Android. Versi android mendukung tepat satu API level yang mengakibatkan versi Android terus berubah, namun tetap mendukung API level sebelumnya. API level ini menentukan suatu aplikasi bisa dijalankan pada suatu platform Android.
Universitas Sumatera Utara
18
2.5.1
Arsitektur android
Sistem operasi Android memiliki 4 lapisan (layer) yang merupakan komponen sistem Android. Gambar berikut merupakan lapisan arsitektur sistem operasi Android:
Gambar 2.6 Arsitektur android (Sumber: Learning Android, 2011)
Google mengibaratkan Android sebagai sebuah tumpukan software. Setiap lapisan dari tumpukan ini menghimpun beberapa program yang mendukung fungsi spesifik dari sistem operasi. Berikut ini susunan dari lapisan-lapisan tersebut jika di lihat dari lapisan dasar hingga lapisan teratas.
Universitas Sumatera Utara
19
1. Linux Kernel Tumpukan paling bawah pada arsitektur Android ini adalah kernel. Google menggunakan kernel Linux versi 2.6 untuk membangun sistem Android, yang mencakup manajemen memori, pengaturan keamanan, manajemen power, dan beberapa driver hardware. Kernel berperan sebagai lapisan abstraksi antara piranti keras dan keseluruhan piranti lunak. Sebagai contoh, HTC GI dilengkapi dengan kamera. Kernel Android terdapat driver kamera yang memungkinkan pengguna mengirimkan perintah kepada piranti keras kamera. Android dibangun di atas kernel Linux 2.6. Namun secara keseluruhan android bukanlah linux, karena dalam android tidak terdapat paket standar yang dimiliki oleh linux lainnya. Linux merupakan sistem operasi terbuka yang handal dalam manajemen memori dan proses. Oleh karenanya pada android hanya terdapat beberapa servis yang diperlukan seperti keamanan, manajemen memori, manajemen proses, jaringan dan driver. Kernel linux menyediakan driver layar, kamera, tombol, WiFi, Flash Memory, audio, dan IPC (Interprocess Communication) untuk mengatur aplikasi dan lubang keamanan. 2. Android Runtime Lapisan setelah Kernel Linux adalah Android Runtime. Android Runtime ini berisi Core Libraries dan Dalvik Virtual Machine. Core Libraries mencakup serangkaian inti library Java, artinya Android menyertakan satu set library dasar yang menyediakan sebagian besar fungsi-fungsi yang ada pada library dasar bahasa pemrograman Java. Dalvik adalah Java Virtual Machine yang memberi kekuatan pada sistem Android. Dalvik VM ini dioptimalkan untuk telepon seluler. Setiap aplikasi yang berjalan pada Android berjalan pada prosesnya sendiri, dengan instansi dari Dalvik Virtual Machine. Dalvik telah dibuat sehingga sebuah piranti yang memakainya dapat menjalankan multi Virtual Machine dengan efisien. 3. Libraries Bertempat di level yang sama dengan Android Runtime. Android menyertakan satu set library dalam bahasa C/C++ yang digunakan oleh berbagai komponen yang ada pada sistem Android. Kemampuan ini dapat diakses oleh programmer melewati aplikasi framework Android. Sebagai contoh Android mendukung pemutaran format audio, video, dan gambar. Berikut ini beberapa core library tersebut :
Universitas Sumatera Utara
20
a.
System C library, diturunkan dari implementasi standard C system library (libc) milik BSD, dioptimasi untuk piranti yang tertanam berbasis Linux.
b.
Media Libraries, berdasarkan Packet Video‟s Open CORE; library ini mendukung playback dan recording dari berbagai format audio and video populer, meliputi MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG.
c.
Surface Manager, mengatur akses pada layar dan lapisan komposit 2D and grafis 3D dari berbagai aplikasi.
d.
LibWebCore, web browser engine modern yang mendukung browser Android maupun web view yang tertanam.
e.
SGL, Mesin grafis 2 dimensi.
f.
3D libraries, implementasi berdasarkan OpenGL ES 1.0 APIs; library ini menggunakan hardware 3D acceleration dan highly optimized 3D software rasterizer.
g.
FreeType, Perender bitmap dan vector font.
h.
SQLite untuk dukungan database.
Library tersebut bukanlah aplikasi yang berjalan sendiri, namun hanya dapat digunakan oleh program yang berada di level atasnya. Sejak versi Android 1.5, pengembang dapat membuat dan menggunakan pustaka sendiri menggunakan Native Development Toolkit (NDK). 4. Application Framework Lapisan selanjutnya adalah application framework atau kerangka kerja aplikasi, yang mencakup program untuk mengatur fungsi-fungsi dasar
Universitas Sumatera Utara
21
smartphone. Kerangka kerja aplikasi merupakan serangkaian tool dasar seperti alokasi resource smartphone, aplikasi telepon, pergantian antar – proses atau program, dan pelacakan lokasi fisik telepon. Para pengembang aplikasi memiliki aplikasi penuh kepada tool dasar tersebut, dan memanfaatkannya untuk menciptakan aplikasi yang lebih kompleks. Di dalam semua aplikasi terdapat servis dan sistem yang meliputi : a. Satu set Views yang dapat digunakan untuk membangun aplikasi meliputi lists, grids, text boxes, buttons, dan embeddable web browser. b. Content Providers yang memungkinkan aplikasi untuk mengakses data dari aplikasi lain (misalnya kontak), atau untuk membagi data yang dimilikinya. c. Resource Manager, menyediakan akses ke non-code resources misalnya localized strings, grafis, dan layout files. d. Notification Manager yang memungkinkan semua aplikasi untuk menampilkan custom alerts pada bar status. e. Activity Manager yang mengelola life cycle dari dari aplikasi dan menyediakan navigasi backstack. 5. Application Berada padai lapisan. Di lapisan ini ditemukan fungsi-fungsi dasar smartphone seperti menelepon dan mengirim pesan singkat, menjalankan web browser, mengakses daftar kontak, dan lain-lain. Bagi rata-rata pengguna, lapisan inilah yang paling sering mereka akses. Mereka mengakses fungsi-fungsi dasar tersebut melalui tampilan pengguna.
Universitas Sumatera Utara