universitas riwijaya -...
TRANSCRIPT
![Page 1: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/1.jpg)
![Page 2: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/2.jpg)
Universitas riwijaya
Fakultas Ilmu
Komputer
Laboratorium
LEMBAR
PENGESAHAN
MODUL
PRAKTIKUM
SISTEM
MANAJEMEN
MUTU ISO
9001:2008
No. Dokumen Tanggal 4 AGUSTUS 2016
Revisi Halaman 2 DARI 48
MODUL PRAKTIKUM
Mata Kuliah Praktikum : Pemrograman Bergerak
Kode Mata Kuliah Praktikum : FSI12317
SKS : 1
Program Studi : SISTEM INFORMASI
Semester : 5 (Ganjil) 2016/2017
DIBUAT OLEH DISAHKAN OLEH DIKETAHUI OLEH
DOSEN PENGAMPUH
Rahmat Izwan Heroza, M.T.
KETUA JURUSAN
Endang Lestari R, M.T.
WAKIL DEKAN 1
BIDANG AKADEMIK
Syamsuryadi, S. SI., M. Kom
![Page 3: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/3.jpg)
DAFTAR ISI
Cover........................................................................................................................................................ 1
Lembar Pengesahan..................................................................................................................................2
Daftar Isi...................................................................................................................................................3
Modul 1.....................................................................................................................................................4
Pendahuluan..........................................................................................................................................4
Dasar Pemrograman Android..............................................................................................................5
Fitur Perangkat Keras Android........................................................................................................... 6
Fitur Perangkat Lunak Android.......................................................................................................... 7
Framework Android.............................................................................................................................8
Perangkat Lunak Pengembangan...................................................................................................... 10
Modul 2...................................................................................................................................................11
Menginstall Eclipse.............................................................................................................................11
Mengkonfigurasi Eclipse dengan ADT............................................................................................ 13
Mengkonfigurasi Eclipse dengan SDK............................................................................................ 17
Modul 3...................................................................................................................................................18
Membangun Project Baru di Eclipse.................................................................................................. 18
Mengkonfigurasi Emulator................................................................................................................20
Menjalankan Project Aplikasi Android dengan Emulator...............................................................22
Struktu Project Android.....................................................................................................................26
Modul 4...................................................................................................................................................28
Modul 5...................................................................................................................................................35
Modul 1
![Page 4: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/4.jpg)
2
1.1. Pendahuluan
Terdapat beberapa alasan mengapa Android berkembang dengan pesat dan kenapa
developersebaiknya membangunAplikasi Android.
a. MarketShare
Developermemiliki kesempatanuntuk mengembangkanaplikasiuntukpasaryangrelatif
barudansedangberkembangpesat. KeberadaanAndroidMarketakan menempatkan
aplikasiyangdibuatolehdeveloperlangsung kepadapengguna.Pengguna tidakperlu mencari
melaluiinternetuntukmenemukandanmeng-installaplikasi yangdibuatoleh developer.Penggunacukup
membukaAndroidMarketyangsudahter-installdiperangkat androidpenggunadan
mengaksesaplikasiyangpenggunabutuhkandanmeng-install ke dalamperangkat androidpengguna.
b. Time to Market
TerdapatAndroidAPIs (ApplicationProgramming Interfaces) yang memudahkandeveloper
untukmembangunaplikasi denganmudahdanwaktuyangsingkat.
c. OpenPlatform
SistemoperasiAndroid merupakan platformterbuka.Sehinggatidakmerujukpadasuatu
perusahaanhardware atausuatuprovider.Platform terbuka android memungkinkan perkembanganmarket
dengansangatcepat, karenasemuaperusahaanhardwaredan providerdapatmembuat dan menjual
perangkat android.Sourcecodeandroiddapatdi akses melalui athttp://source.android.com, untuk
digunakan dan dimodifikasi sesuai kebutuhanperusahaanhardware, providerataudeveloperaplikasi.
d. CrossCompatibility
Androiddapatberjalan diberbagaiperangkatdenganukurandanresolusilayaryang berbeda.Android
memiliki fituryangmembantu developeruntuk mengembangkan aplikasi yang compatible untuk
berbagai perangkat (cross-compatible application). Google memiliki
featuredetectionyangmengaturagaraplikasiyangdikembangkanolehdeveloper hanya berjalan di perangkat
yang compatible. Sebagai contoh, jika suatu aplikasimembutuhkan kameradepan(front-
facingcamera)makahanyaperangkatandroiddengan kameradepanyangakandapat melihat aplikasitersebut
di AndroidMarket.
Suatuperangkatandroidharus mengikutisuatuaturanuntukmendapatkansertifikat kesesuaian
terhadapAndroid Market untukmemastikanaplikasi dapat berjalandiatasnya,
diantaranyakeberadaan:(a)Kamera,(b)Kompas,(c)GPS(GlobalPositioningSystem),
(d)BluetoothTransceiver.
e. MashupCapability
MashupCapabilitymerupakan kemampuanuntukmengkombinasikan duaataulebih
layananuntukmengembangkan suatu aplikasi.Sebagaicontoh,developerdapatmembuat mashup dengan
menggunakan kamera dan GPS, sehingga terbangun aplikasi pengambilanphotodengandilengkapi
![Page 5: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/5.jpg)
3
secaratepatlokasi pengambilannya.
Beberapacontohlainmashupyang mungkindikembangkandalamsuatuaplikasi,yaitu:
1. GeolocationdanSocialNetworking
Suatuaplikasi yangsecaraotomatismelakukantweet posisi penggunasetiap10menit.
2. GeolocationdanGaming
Location-basedgaming merupakan modelgame yangsaatinipopular.Gamememiliki
backgroundservicesuntukmengecekposisipenggunadan membandingnyadengan
posisipenggunayanglaindiareayangsama.Jikajarakantarapenggunakurangdari
1km misal,makaakandiberikannotifikasi danmemungkinkan merekauntukbertarung melalui
gametersebut.
1.2. DasarPemrograman Android
MembangunAplikasiAndroidsangat mudah,defaultuntukbahasa pemrograman yang digunakan oleh Android
adalah java.Tidaksemua fitur java yangada digunakan akan tetapi sebagiandari
javayangseringdisebutdenganDalvikVirtualMachine. Beberapabagiankecil dari
frameworkAndroidmenggunakanbahasa XMLuntukscripting-nya.
a. Activity
ActivitymerupakancontaineruntukUser Interface (UI). SebuahAplikasiAndroid terbangun dari
satuataubeberapaActivity.
b. Intents
Intent merupakansistem pesanutamayang menjalankanAndroid. Intent terdiri dari Action
yangharusdijalankan (Tampil,Ubah, Dial,dll)danData.
Intentdigunakanuntukmemulai aktivitasdankomunikasi antarbagiandari sistemAndroid. Suatuaplikasi
dapatmengirimkanataumenerimaintent.
1. MengirimkanpesandenganIntent
Ketikasuatuaplikasimengirimkan suatu intent,aplikasimengirimkan pesan memberitahukan Android
untuk menjalankan sesuatu.Misal: memberitahukan Android untukmenjalankansuatuActivitydari
aplikasi atau menjalankanaplikasi lain.
2. MendaftarkanIntentReceiver
Mengirimkan pesan dengan Intent bukan berarti sesuatu selanjutnya akan terjadi secara otomatis.
Aplikasi harus mendaftarkan intent receiver yang memperhatikan
intentdanmemberitahukanAndroidapayangharusdilakukan.
Contoh,jikapengguna menekanlamasuatuimagediimagegallery,makaakan
memunculkancontextmenuyangberkaitan denganimagesharing.Dikarenakan terdapatbeberapa
receiversyangdidaftarkanberkaitandenganimage sharing(email,
messaging,Bluetooth,dll)makacontext menu dimunculkanuntukmemberikanopsi
![Page 6: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/6.jpg)
4
keputusankepadapenguna.
c. CursorlessControls
PerangkatAndroidmenggunakan jaripengguna sebagaiinput.Jikapadacomputerbiasa digunakan pointer
mouse, kemudian left-clickuntuk berinteraksi dengan suatu tombol missal, makapengguna
Androiddapat menggunakan jarinyalangsung ke tombol.Untuk menggantikan right-click, pengguna
Android dapat menekankan jarinya agak lama ke layar, kemudiancontext menuakanmuncul.
d. ViewsdanWidgets
Viewmerupakanelemendasar UI (User Interface). Sebagaicontohareakotakpada layar yangbertanggung
jawabuntuktampilandanmenerimaevent (eventhandling).Beberapa contohviewantaralain:
(1)ContextMenu,(2)Menu, (3) View,(4)SurfaceView.
Widgetsadalahelemen UIyanglebihcanggih.Merupakancontroluntukinteraksiantara
sistemdenganpengguna.Beberapacontoh Widgetsantaralain:(1)Button,(2)CheckBox, (3)DatePicker, (4)
DigitalClock, (5) Gallery,(6) FrameLayout, (7) ImageView,(8) RelativeLayout,(9)PopupWindow.
Untukmempelajariwidgetslebihlanjutdapat dilihat melalui url:
http://developer.android.com/reference/android/widget/package-summary.htmle.
Asynchronous Calls
Android memiliki sebuah classyangAsyncTaskyang memungkin aplikasi menjalan beberapaoperasipada
waktuyangbersamaan, tanpaharusmengaturbagaimana thread berjalansecara
khusus.AsyncTaskmemungkindeveloperuntukmembangunmodel programyangbersihuntukproses-
prosesasinkron.
Prosesasinkronbiasa digunakanuntukproses-prosesyangmembutuhkanwaktulama,
misal:NetworkCommunication(Internet),MediaProcessing,danberbagaiproseslain
yangmengharuskanpengguna menunggu.Jika penggunaharus menunggu,makadapat
digunakanprosesasinkronuntukmenampilkan UIyangmemberitahukanpenggunaapa yangterjadi.
f. BackgroundServices
Servicesmerupakanaplikasiyangberjalandibelakangdantidakterlalupentingmemiliki
UI,sebaicontoh:antiivirus. Sebagianbesarpemutasmusic(musicplayer)dariAndroid
Marketberjalansebagai BackgroundServices,yangmanapenggunadapatmendengarkan musiksembali
mengeceke-mailataumelakukan tugaslainyangmembutuhkan penggunaantampilanlayar.
1.3. Fitur PerangkatKerasAndroid
Perangkat Android memiliki beberapa fitur perangkat keras didalamnya, yang dapat
dimanfaatkandeveloperdalammembangunaplikasi.
a. Touchscreen
PerangkatAndroidmemilikifiturlayarsentuh (touchscreen)yangmemberikan beberapa kemungkinanan bagi
![Page 7: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/7.jpg)
5
pengguna untukberinteraksi dengan aplikasi dengan menggunakan
jari.Penggunadapatmelakukanswipe,flip,drag,danpinch untukzoom.Androidjuga
mendukungmultitouchyangberarti keseluruhanlayardapatdisentuhdengansatuatau lebih jari padasaat
yangbersamaan.
b. GPS
Sistem operasi Android mendukung GPS yang memungkinkan developer untuk mengakseslokasi
pengguna.Contoh aplikasi yangmemanfaatkan GPS adalahAplikasi
Peta(Map)yangmenunjukkanlokasipengguna danmemberikanpetunjukuntukmenuju suatulokasi.
c. Accelerometer
AndroidmendukungAccelerometer,yaituperangkatyangdigunakan untukmengukur
percepatan.Accelerometerdapat memberitahukan apabilasuatuPerangkatAndroid
bergerak,atauterguncang,atauberbalikarahposisinya.
d. SD Card
Androidmemiliki fituryangmemungkinkanpenggunaatauaplikasiuntukmengakses (menyimpanatau
membuka)filepadaSDCard.SDCardmerupakan mediapenyimpanan medium yang digunakanPerangkat
Androiddanbeberapaperangkatmobile lain non Androidsebagaimediapenyimpanan.
1.4. Fitur PerangkatLunakAndroid
Androidmemilikibanyakfiturperangkatlunakyangdapatdigunakanolehdeveloperdalam
mengembangkanaplikasi.Beberapafiturpopuler yangakandijabarkandisini.
a. Internet
Kemampuan aksesinternetpada Android memberikan banyakkeunggulan.Berbagai informasi secara real-
time dapat diperoleh dengan mudah dengan internet. Contoh,
sebagaipengguna,dapatmenggunakaninternetuntukmelihatjadwalpemutaran film
bioskop,cuacasuatuarea,jadwalpenerbangan danlainnya.Sebagaideveloper,dapat
menggunakaninternetuntukaksessecarareal-time kepadadata,update data.Developer juga dapat
menggunakan internet untuk menyimpan berbagai asset untuk kemudiandigunakansuatuaplikasi,seperti
dilakukanPandoradanYouTube. Denganinternet dapat dibangunmodelaplikasi yangdisebutclient-
servercomputing.Contohlain,aplikasipeta, mengaksesdatapetadan GPSdari webserver.
b. AudiodanVideoSupport
SistemoperasiAndroidmemungkinkan developermenyertakanaudio danvideodalam aplikasi denganmudah.
Berbagaistandar format audiodanvideodidukung.
c. Contact
Androidmemungkinkan akses kecontacsyangtersimpandapatPerangkatAndroid. Developerdapat
menggunakan fituriniuntukmenampilkancontactsdalamcarabaruyang berbeda.Hal
lainyangdapatdilakukanadalahmembangunaplikasi yang menggabungkan antaracontactsdengan GPS,yang
![Page 8: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/8.jpg)
6
memberikannotifikasi kepadapengguna jikapengguna beradadi dekat alamat satucontactyangada.
d. Security
Androidmemungkinkan aplikasiuntukmelakukanbanyakhal.AkantetapiAndroidjuga
menyiapkanmekanisme keamananberupapermissionberkaitandengan beberapatugas.
Contoh:Downloadimagedan menyimpannyadiSDCard, makaharusdisetujui terlebih
dahulupermissionuntukmengakses SD Card.
e. GoogleAPIs
SistemoperasiAndroidmemungkinkandengantidakterbatas membuatpanggilantelepon,
mengorganisasicontactsataumeng-installaplikasi.Developerdapatmengintegrasikan
peta(map)kedalamsuatuaplikasidengan menggunakan MapsAPIyangmengandung MapWidgets.Berbagai
fiturdapatditambahkandenganMapsAPI,antaralain:(1)
Menampilkansuatulokasidipeta,(2)Mendapatkanpanduannavigasi,(3)Komunikasi
dataantaraaplikasidenganclouds.
1.5. FrameworkAndroid
Android sepenuhnya open source,sehingga semua developeryangmembutuhkan dapat mengakses untuk
menggunakan dan memodifikasi kode program Android. Source code androiddapat di download melalui
http://source.android.com.
Androiddibangundiatas opensourcelinux kernel2.6.Kernellinexutersebutdipilih karena menyediakanfitur
utamauntukmembangunsistemoperasi Android,diantaranya:
4) SecurityModel:Linuxkernel menanganikeamananantaraaplikasi dansistem
5) MemoryManagement:Linuxkernelmenanganimanajemenmemori untukdeveloper
6) ProcessManagement:Linuxkernelmengaturprosesdenganbaik,mengalokasikan
resourceuntukprosessesuai dengankebutuhan
7) NetworkManagement:Linuxkerneljugamenangani jaringankomunikasi
8) DriverModel:Perusahaanperangkat kerasdapat mengembangkandriversperangkat merekasecaramandiri
untukberjalandi ataslinux
Diataskernellinux tersebut,frameworkAndroiddibangundengan berbagai fitur.Fitur-fitur
tersebutdiadopsidariberbagaiprojectopensource.Beberapa fiturAndroid framework diantaranya:
![Page 9: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/9.jpg)
7
9) AndroidRunTime:Mengandunginti libraryjavadandalvikvirtual machine
10)OpenGL(GraphicsLibrary):MerupakanAPI(ApplicationProgramInterface)yang
digunakanuntukmenghasil graphics2Ddan3D,bersifatcross-languagedan cross- platform
11)Webkit:merupakanmesinwebbrowseropensourceyangmenyediakanfungsionalitas
untukmenampilkanwebkonten
12)SQLite: merupakan opensource mesin database yang di rancang untuk sistem embedded
13)Mediaframeworks:libraryyangdigunakanuntukmenjalankandanmerekamaudio sertavideo
14)SecureSocketLayer (SSL): library ini bertanggung jawab terhadapkeamananinternet
Untukpemanfaatan fitur-fiturdalamAndroid frameworkdiatas,disediakanberbagailibrary
dalamApplicationFrameworkyangdapat digunakanolehdeveloper,diantaranya:
15)ActivityManager:Mengelolasiklushidupactivity
16)TelephonyManager: Menyediakanaksesketelephoneservice
17)ViewSystem:Menangani viewdanlayoutyangmembangunUser Interface (UI)
18)LocationManager: menemukanlokasissecarageografi
![Page 10: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/10.jpg)
8
1.6. PerangkatLunak Pengembangan
JavaJDK http://java.sun.com/javase/downloads/index.jsp
AndroidSDK http://developer.android.com/sdk/index.html
Eclipse IDE www.eclipse.org/downloads
AndroidADT https://dl-ssl.google.com/android/eclipse/
![Page 11: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/11.jpg)
9
Modul 2
2.1. MenginstallEclipse
1. Double-ClickpadashortcutEclipse.exeuntukmenjalankanEclipse
![Page 12: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/12.jpg)
10
2. Jikadibutuhkankonfigurasi workspace
Jikaandabekerjadenganbeberapaprojectdianjurkanuntukmenggunakanworkspaceyangberbedauntukmasing-masingproject.
3. Tampilanawal Eclipse
![Page 13: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/13.jpg)
11
4. Clickpadaicon untukmenujuworkbench.
![Page 14: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/14.jpg)
13
5. Workbench
2.2. MengkonfigurasiEclipsedenganADT
Untuk dapat menggunakan Eclipse dalam membangun Aplikasi Android. Terlebih dahulu
harusdilakukankonfigurasi AndroidDevelopmentTools(ADT) dalamEclipse.
1. Jalankan Eclipse(jikabelumberjalan)
2. Pilihpada menubarHelpInstall New Software
![Page 15: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/15.jpg)
14
3. MunculInstallwindowpops-up,yangmengijinkanuntukmenginstallplug-inbarukedalam
Eclipse.
4. KlikButtonAdd,untukmenambahkan
5. Tuliskannamapada NameField, misal:AndroidADT
6. PadaLocationField, tuliskan: https://dl-ssl.google.com/android/eclipse/
![Page 16: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/16.jpg)
15
7. Tampil:
8. SelectAll, kliknext> untukinstall
9. Review,kliknext>
![Page 17: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/17.jpg)
16
10.LicenseAgreement,KlikFinish
11.Install dalam akanberjalan,pluginADTakanterinstall
![Page 18: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/18.jpg)
17
2.3. Mengkonfigurasi lokasi SDK
1. Pada menubar, pilihwindowpreferences
2. PilihAndroidpada tabdikiri
3. AturlokasiSDK,Kemudian OK
![Page 19: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/19.jpg)
18
Modul 3
3.1. Membangun ProjectBarudi Eclipse
1. DalamEclipse,PilihFileNewProject
2. PilihAndroidAndroid ProjectNext
![Page 20: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/20.jpg)
19
3. PadaProject Name, tulis:HelloAndroid
4. UntukBuildTargetPilihAndroid2.2
5. IsikanuntukApplication Info:
ApplicationName :HelloAndroid
PackageName :emha.android.helloandroid
CreateActivity : MainActivity
MinimumSDK :8
KlikFinish
![Page 21: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/21.jpg)
20
6. DidapatkantampilanpadaPackageExplorer sbb:
3.2. MengkonfigurasiEmulator
Untukmelihatapakah aplikasiyangdibangunpada kondisiberjalanbaikatau tidak,dapat
dicobadijalankandenganemulator.Developerharustahubagaimana men-setupemulator denganbeberapa
konfigurasiyangberbeda.Pertamaharus membuatAndroidVirtualDevice (AVD)yangdisebutjuga
emulator.AVDmerupakan PerangkatVirtualAndroidyangmemiliki fitur seperti Perangkat Android
sesungguhnya.
1. Buka AVD Manager, pada toolbarklikikon (OpensAndroidVirtual DeviceManager)
2. Muncul kotakdialogsbb:
![Page 22: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/22.jpg)
21
3. KlikNew
Kemudianisikan:
Name :2_2_Default_HVGA
Target :Android2.2–API Level 8
SD Card :
<sementarakosongkan>Skin :HVGA
Hardware :
<sementaraabaikan>KlikButtonCreateAV
G
Didapatkanhasil sebagai berikut :
![Page 23: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/23.jpg)
22
3.3. MenjalankanProjectAplikasiAndroiddenganEmulator
1. Sebelumprojectaplikasidijalankan,atur terlebihdahulurunconfiguration
PadaMenuBarRunRunConfiguration
2. PilihAndroidApplication
3. Kemudianklikikonnew
![Page 24: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/24.jpg)
23
4. MasukanNama Konfigurasi danPilihProjectyangakandijalankandengankonfigurasi ini
Name :ContohKonfigurasi1
Project :HelloAndroid
PadaTabTarget : PilihAutomatickemudianAVD2_2_Default_HVGA
![Page 25: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/25.jpg)
24
5. Jalankan
6. TampilanAVD
![Page 26: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/26.jpg)
25
![Page 27: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/27.jpg)
26
3.4. Struktur ProjectAndroid
PadaProject Explorerterlihatdetail strukturdarisuatuProjectAndroid
Terdapat beberapafolderdibawahNamaProject, yaitu:
src
merupakanfolderuntuksource
gen
merupakanfolder misterius.Folder ini berikanfileyangdigenerateolehADT
AndroidVersion(misal:Android2.2)
assets
![Page 28: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/28.jpg)
27
merupakanfolderuntukmenempatkanberbagai fileasset(data)yangdimilikiproject
(contoh:filedatadariSQLite).Datadi folderinidapatdiakses melaluiAssetManager
ataumetodegetAssets().
res
merupakanfolderuntukmenempatkanberbagairesourceyangdigunakanolehproject, missal:filexml,iconataupicture.
Selain folder-folderdiatas,terdapatbeberapa folderlainmisal folder:bin,libs,danreferenced libraries.
Folderbintidaktampakdikarenakandihidden.Sementara folderlibsdanreferencedlibraries tidakakan
muncul sampaidevelopermenambahkanthird-partylibrarydandireferensidalam project.
FileAndroidManifest.xml membantudevelopermengidentifikasi komponenyangdibuilddan
dijalankanolehaplikasi.
Project.properties membantu developer mengidentifikasi default properties dari project android.
![Page 29: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/29.jpg)
28
Modul 4
1. Buatlahsebuahproject androidbarudenganaturansebagai berikut:
ProjectName :PengalihModeSilent
ApplicationName:PengalihModeSilent
Contents :default
BuildTarget :Android2.2
Package Name :emha.android.pengalihmodesilent
CreateActivity :MainActivity
MinSDKVersion :8
2. Bukafilemain.xml difolderreslayout
Default-nya yang akan muncul adalah Visual Designer dari main.xml, klik pada tab main.xml
dibagianbawah.
![Page 30: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/30.jpg)
29
Default Deklarasi XML
<?xmlversion="1.0"encoding="utf-8"?>
Baris pertama menunjukan deklarasi file xml. Memberikan informasi tipe file tersebut terhadapeditor.
TipeLayout
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="fill_parent" android:layout_height="fill_parent"android:orientation="vertical">
BarisselanjutnyadiatasmenunjukantipeLayoutyangdigunakan,dalamhaliniadalah
LinearLayout(akandibahaslebihlanjut nanti).
View
<TextView android:layout_width="fill_parent"android:layout_height="wrap_content"android:text="@string/hello"/>
Barisselanjutmenunjukanblokuntukview,yaitublokdasarpembangunuserinterface. Dalamhal ini
adalahsebuahTextView.
3. Dari main.xml, hapus bagian view (TextView) yang ada. Sehingga main.xml secara
keseluruhanakanmenjadi sbb:
![Page 31: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/31.jpg)
30
4. Tambahkan(tarik) imageyangakandigunakankedalam folder resdrawable-mdpi
phone_on.pnguntukmodeteleponregular
phone_silent.pnguntukmodeteleponsilent
5. TambahkanimagekedalamLayout
Dilakukandenganmengetikkankodetambahandi main.xml sehinggamenjadi sbb:
6. Tambahkan(tarik) iconuntukaplikasikeproject, resdrawable-mdpi
![Page 32: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/32.jpg)
31
7. Tambahkanbuttonkedalammain.xml, menjadi sbb:
8. Coba tampilkan Visual Designer
9. AturRun Configuration
10.Jalankan Aplikasi PengalihModeSilent
![Page 33: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/33.jpg)
32
![Page 34: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/34.jpg)
30
11.BukafileMainActivity.javadifolder srcemha.android.pengalihmodesilent
12.Kitaakanmencobamembuateventhandlerpertama, yang menanganijikabuttondiklik
Tambahkankodeprogramsbb:
13.Tandacrossmerahdikiri pinggir menunjukanterdapaterrorpadabariskode bersangkutan.
14.Hal ini terjadidikarenakanobjectButtondan View belumdikenali.
Pada tandacrossmerah, klik kemudianklikimportuntukmenambahkanlibrary
![Page 35: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/35.jpg)
31
15.Padabagianataskode, akanterdapat beberapatambahan import sbb:
16.Untukselanjutnyaagakmanajemenkodeprogram menjadilebihbaik, makakitaubah,
denganmenempatkankodeprogram denganfungsitertentudalam satupaket method
![Page 36: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/36.jpg)
32
17.Untukselanjutnyakitaakancobabekerjadenganaudioservicedanpengaturanmode.
Lengkapikodeprogram menjadisbb:
![Page 37: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/37.jpg)
33
18.Jalankanaplikasi
![Page 38: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/38.jpg)
34
KlikButton
![Page 39: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/39.jpg)
35
Modul 5
1. Buatlahsebuahproject androidbarudenganaturansebagai berikut:
ProjectName :Materi4_NIMANDA
ApplicationName:Materi4_NIMANDA
Contents :default
BuildTarget :Android2.2
Package Name :emha.android.materi4
CreateActivity :MainActivity
MinSDKVersion :8
2. Bukamain.xml difolder layout
![Page 40: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/40.jpg)
36
3. HapusTextView yangsudahadasehinggamain.xml menjadisbb:
4. Melalui Graphical Layout, tambahkanview-viewsebagai berikut:
12
3
4
5
6
7
8
9
10
11
5. Aturpropertysemuaviewsbb:
No TipeView Properti Nilai
1 TextView id @+id/textNama
text NamaLengkap
typeFace monospace
textSize 24dp
textStyle Bold
2 EditText (PlainText) id @+id/editNama
typeFace monospace
textSize 24dp
3 TextView id @+id/textEmail
text Email
typeFace monospace
![Page 41: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/41.jpg)
37
textSize 24dp
textStyle Bold
4 EditText (E-Mail) id @+id/editEmail
typeFace Monospace
textSize 24dp
5 TextView id @+id/textJenisKelamin
text JenisKelamin
typeFace monospace
textSize 24dp
textStyle Bold
6 RadioGroup
a.RadioButton id radioLaki
text Laki-Laki
b.RadioButton Id radioPerempuan
text Perempuan
7 TextView id textHobi
text Hobi
typeFace monospace
textSize 24dp
textStyle Bold
8 CheckBox Id checkBaca
text Membaca
9 CheckBox id checkMemancing
text Memancing
10 CheckBox id checkBersepeda
text Bersepeda
11 Button id btnOK
text OK
6. menu.xml akanberubahmenjadisbb:
<?xmlversion="1.0"encoding="utf-8"?><LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"android:layout_height="fill_parent"android:orientation="vertical">
<TextViewandroid:id="@+id/textNama"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="NamaLengkap"
![Page 42: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/42.jpg)
38
android:typeface="monospace"android:textSize="24dp"android:textStyle="bold"/>
<EditTextandroid:id="@+id/editNama"android:layout_width="match_parent"android:layout_height="wrap_content"android:textSize="24dp"android:typeface="monospace"/>
<TextViewandroid:id="@+id/textEmail"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Email"android:typeface="monospace"android:textSize="24dp"android:textStyle="bold"/>
<EditTextandroid:id="@+id/editEmail"android:layout_width="match_parent"android:layout_height="wrap_content"android:textSize="24dp"android:typeface="monospace"android:inputType="textEmailAddress"><requestFocus/>
</EditText>
<TextView android:id="@+id/textJenisKelamin"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="JenisKelamin"android:typeface="monospace"android:textSize="24dp"android:textStyle="bold"/>
<RadioGroupandroid:id="@+id/radioGroup1"android:layout_width="wrap_content"android:layout_height="wrap_content">
<RadioButtonandroid:id="@+id/radioLaki"android:layout_width="wrap_content"android:layout_height="wrap_content"android:checked="true" android:text="Laki-Laki"/>
<RadioButton android:id="@+id/radioPerempuan"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Perempuan"/>
</RadioGroup>
![Page 43: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/43.jpg)
39
<TextViewandroid:id="@+id/textHobi"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Hobi"android:textSize="24dp"/>
<CheckBoxandroid:id="@+id/checkBaca"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Membaca"/>
<CheckBox android:id="@+id/checkMemancing"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Memancing"/>
<CheckBox android:id="@+id/checkBersepeda"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Bersepeda"/>
<Buttonandroid:id="@+id/btnOK"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="OK"/>
</LinearLayout>
7. Coba jalankanaplikasi, akandidapatkantampilansbb:
Akantampakbahwa,ukuranlayarsecaravertical tidakcukupuntukmenampilkanseluruh obyekview
yangada. Solusinyaadalahdengan menambahkanScroll untukmenggulung layar kearahvertical.
![Page 44: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/44.jpg)
40
8. TambahkanScrollView, danaturstruktur dalammain.xml
Ubah menjadi :<?xmlversion="1.0"encoding="utf-8"?>
<ScrollViewxmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/scrollView1"android:layout_width="match_parent"android:layout_height="wrap_content">
<LinearLayout android:layout_width="fill_parent"android:layout_height="fill_parent"android:orientation="vertical">
<TextViewandroid:id="@+id/textNama"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="NamaLengkap"android:typeface="monospace"android:textSize="24dp"android:textStyle="bold"/>
...
</LinearLayout>
</ScrollView>
![Page 45: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/45.jpg)
41
9. Tambahkankodeprogram kedalam btnOK, padamainActivity
JikadiklikOK, makaakan memunculkanidentitaskeForm
packageemha.android.materi4;
importandroid.app.Activity;importandroid.os.Bundle;importandroid.text.style.LineHeightSpan.WithDensity;importandroid.view.View;importandroid.widget.Button;importandroid.widget.CheckBox;importandroid.widget.EditText;importandroid.widget.RadioButton;
publicclassMainActivityextendsActivity{/**Calledwhentheactivityisfirstcreated.*/
@OverridepublicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);setContentView(R.layout.main);
finalEditTexteditNama=(EditText)findViewById(R.id.editNama);
finalEditTexteditEmail=(EditText)findViewById(R.id.editEmail);
finalRadioButtonradioLaki=(RadioButton)findViewById(R.id.radioLaki);
finalRadioButtonradioPerempuan=(RadioButton)findViewById(R.id.radioPerempuan);
finalCheckBoxcheckBaca=(CheckBox)findViewById(R.id.checkBaca);
finalCheckBoxcheckMemancing=(CheckBox)findViewById(R.id.checkMemancing);
finalCheckBoxcheckBersepeda=(CheckBox)findViewById(R.id.checkBersepeda);
ButtonbtnOK=(Button)findViewById(R.id.btnOK);
btnOK.setOnClickListener(newView.OnClickListener(){
@OverridepublicvoidonClick(Viewv){//TODOAuto-generatedmethodstubeditNama.setText("HarunAlRasyid");editEmail.setText("[email protected]");radioLaki.setChecked(true); checkBaca.setChecked(true);checkMemancing.setChecked(false);checkBersepeda.setChecked(true);
}});
}}
![Page 46: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/46.jpg)
42
10.Jalankanaplikasi
11.KlikbuttonOK
![Page 47: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/47.jpg)
43
Android memiliki beberapa resources,antara lain:
1)Layouts
Layout merupakanbagianyang mendefinisikanbagaimanakeadaanviewdalamaplikasi.
Filelayoutdefaultnyaberadadi direktori res/layouts. ADTsecaradefaultakanmembuat filemain.xml
padadirektori tersebut.
LinearLayout Layoutyang menyusunbagian-bagiannya dalamsatu
baris
RelativeLayout Layoutyangposisi dari bagian-bagiannyadapat di
deskripsikandalam relasi satudgnyglainnyaataudgn
induknya.
FrameLayout Layoutini dirancanguntukmemblokirareapadascreen
untukmenampilkansatukomponen. Developerdapat
menambahkanbeberapaanakbagian, tetapi semua
akandipatokkekiri atasscreen. Anakbagiandarilayout
akandigambarkandalamstack,yangterakhir akan beradadi
atasstack.
TableLayout Layoutyang menyusunanakbagiannyadalambarisdan
kolom
2)Strings
3)Images
4)Dimensions
Merupakanunit ukurannumerik:
- dp (density-independentpixels)
- sp (scale-independentpixels)
- pt (points)
- px(pixels))
- mm (millimeters)
- in (inches)
![Page 48: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/48.jpg)
44
5)Styles
Stylesdi androidsangat miripdenganCascadingStyleSheets (CSS)di pengembangan
web.StylemerupakankumpulandaripropertyyangdapatditerapkanpadaView secara
mandiri,Activity,ataukeseluruhanaplikasi (melaluifile manifest). Style mendukung inheritance.
Contoh property style antara lain: font size, font color, dan screen background.
6)Themes
Theme merupakan Style yangditerapkan pada keseluruhan Activity atau Aplikasi.Jika
StylediterapakansebagaiThemedalamsuatuAplikasi,makasemuaView danActivity dalamAplikasi
akanMeng-Inheritssettingdari Style.
7)Values
Valuedapat mengandungberbagaitipeuntukaplikasi, diantaranya:
- Bool:merupakannilai Boolean.Disimpandalam filexml, biasanyadi lokasi
res/values/<filename>.xml;
Contoh: res/values/bools.xml
- Integer: merupakannilai Integer. Disimpandalam filexml,biasanyadi lokasi
res/values/<filename>.xml;
Contoh: res/values/integers.xml
- IntegerArray:merupakan ArrayInteger.Disimpandalam filexml,biasanyadi lokasi
res/values/<integers>.xml;Yang mana integersmerupakan<namafile>
- TypedArrays:merupakantipeyangdigunakanuntukmembuatArraydariberbagai
resourceyang tidaksejenis.Biasanyadisimpandi res/values/<filename>.xml; Misal
res/values/types.xml
8)Menus
Menudapatdidefinisikanmelalui kodemaupun XML.Caraawaluntukmendefinisikan menu adalah
melalui XML. Biasanyamenu diletakkan di direktori /menus.Setiap menu memilikifile .xmlsendiri.
9)Colors
Filecolorsbiasanyadiletakkandivalues/colors.xml.Fileinimemungkinkandeveloper
untukmendefinisikannamacolor, misal:login_screen_font_colors,yangberarti colordari font
yangdigunakanpadahalamanlogin.
![Page 49: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/49.jpg)
45
LATIHAN
1. Bukakembali project PengalihModeSilent yangpernahdibuat
2. Padasesi latihanini akancobadi buatHome ScreenWidget untukAplikasi PengalihMode
Silent.Beberapaclassyangakandigunakan:
- Intent
- BroadcastReceiver
- AppWidgetProvider
- IntentService
- AppWidgetProviderInfo
HomeScreen Widgetdalamandroidmerupakanminiatureaplikasiyangdapatdilekatkan
padaaplikasilainsepertipadaHomeScreen.HalinijugadisebutAppWidgets. App
Widgetsdapatmenerimainputdaripenggunamelaluieventclickdandapatmeng-update
![Page 50: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/50.jpg)
46
dirimerekasendirimelaluijadwalygregular.App Widgetdiimplementasikanpadahome
screendenganlong-pressing.
UntukmembuatAplikasiPengalihModeSilentlebihbermanfaat,maka akandigunakan
HomeScreenWidget,sehinggapenggunabisamenambahkanaplikasiinikehomescreen perangkat mereka.
3. Tambahkansebuahclassbarupadaprojectanda(AplikasiPengalihModeSilent),pada
packageemha.android. pengalihmodesilent, dengannama:AppWidget.java
4. Lengkapikodeprogram menjadiseperti berikutini:
![Page 51: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/51.jpg)
47
5. Padalayout,buat sebuahlayoutbarudengannamawidget.xml
6. TambahkansebuahImageView,danaturpropertiessehinggadidapatkondisiwidget.xml sebagai berikut:
![Page 52: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/52.jpg)
48
7. Lengkapikodeprogram padasrc/widget.java, menjadi sbb:
packageemha.android.pengalihmodesilent;
importandroid.app.Activity;importandroid.app.IntentService;importandroid.app.PendingIntent;importandroid.appwidget.AppWidgetManager;importandroid.appwidget.AppWidgetProvider;importandroid.content.ComponentName;importandroid.content.Context;importandroid.content.Intent;importandroid.media.AudioManager;importandroid.widget.RemoteViews;
publicclassAppWidgetextendsAppWidgetProvider{
@OverridepublicvoidonReceive(Contextcontext,Intentintent){
if (intent.getAction()==null){//Lakukansesuatucontext.startService(newIntent(context,ToggleService.class));
} else{super.onReceive(context,intent);
}}
@OverridepublicvoidonUpdate(Contextcontext,AppWidgetManager
appWidgetManager,int[]appWidgetIds){//LakukanSesuatucontext.startService(newIntent(context,ToggleService.class));
}
![Page 53: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/53.jpg)
49
publicstaticclassToggleServiceextendsIntentService{publicToggleService(){
super("AppWidget$ToggleService");}
@OverrideprotectedvoidonHandleIntent(Intentintent){
ComponentNameme=newComponentName(this,AppWidget.class);AppWidgetManagermgr=AppWidgetManager.getInstance(this);mgr.updateAppWidget(me,buildUpdate(this));
}
privateRemoteViewsbuildUpdate(Contextcontext){ RemoteViewsupdateViews=new
RemoteViews(context.getPackageName(),R.layout.widget);AudioManageraudioManager=
(AudioManager)context.getSystemService(Activity.AUDIO_SERVICE);if(audioManager.getRingerMode()==
AudioManager.RINGER_MODE_SILENT){updateViews.setImageViewResource(R.id.kondisiPhone,
R.drawable.phone_on);audioManager.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
} else{updateViews.setImageViewResource(R.id.kondisiPhone,
R.drawable.phone_silent);audioManager.setRingerMode(AudioManager.RINGER_MODE_SILENT);
}Intenti=newIntent(this,AppWidget.class);PendingIntentpi= PendingIntent.getBroadcast(context,0,i,0);updateViews.setOnClickPendingIntent(R.id.kondisiPhone,pi);returnupdateViews;
}}
}
8. MengaturAppWidget Metadata a.
Padadirektori res/
b. Buatsatudirektori baru, NewFolder,beri nama:xml
c. Dalam folder xml, buat sebuat new android xml file, dengan nama:
widget_provider.xml
![Page 54: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/54.jpg)
50
d. Tipe filetersebut adalahAppWidgetProvider
e. KlikFinish
9. Lengkapi widget_provider.xmlmenjadisbb:
![Page 55: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/55.jpg)
51
10.Langkahselanjutnya, mendaftarkankomponenbarukemanifest a. Buka:
AndroidManifest.xml
Akantampaksourcexml sbb:
b. Tambahkanelemenxmlsehinggamenjadi sbb(ygdiblokorangeadalahkodeygbaru):
<?xmlversion="1.0"encoding="utf-8"?><manifestxmlns:android="http://schemas.android.com/apk/res/android"
package="emha.android.pengalihmodesilent"android:versionCode="1"android:versionName="1.0">
<uses-sdkandroid:minSdkVersion="8"/>
<application android:icon="@drawable/ic_launcher"android:label="@string/app_name"><activity
![Page 56: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/56.jpg)
52
android:name=".MainActivity"android:label="@string/app_name"><intent-filter>
<actionandroid:name="android.intent.action.MAIN"/><categoryandroid:name="android.intent.category.LAUNCHER"/>
</intent-filter></activity>
<receiverandroid:name=".AppWidget"android:icon="@drawable/icon"android:label="@string/app_name"><intent-filter><actionandroid:name="android.appwidget.action.APPWIDGET_UPDATE"/></intent-filter><meta-data android:name="android.appwidget.provider"
android:resource="@xml/widget_provider"/></receiver>
<serviceandroid:name=".AppWidget$ToggleService"/></application>
</manifest>
11.Selanjutnya,MeletakkanWidget di atasHomeScreen a.
Kliklamadi homescreen
![Page 57: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/57.jpg)
53
b. Akanmunculpopup,pilihwidgets
c. KemudianPilihPengalihModeSilent
![Page 58: Universitas riwijaya - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Praktikum-Pemrog... · Universitas riwijaya Fakultas Ilmu Komputer Laboratorium LEMBAR PENGESAHAN](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c8f8cb209d3f2387d8be7cc/html5/thumbnails/58.jpg)
54
12.Coba jalankanaplikasi,klikiconwidgets PengalihModeSilentdi homescreen