Anda di halaman 1dari 27

BAHAGIAN TEKNIK DAN VOKASIONAL

KEMENTERIAN PENDIDIKAN MALAYSIA


ARAS 5 & 6, BLOK E14, KOMPLEKS E,
PUSAT PENTADBIRAN KERAJAAN PERSEKUTUAN
62604 PUTRAJAYA

KOLEJ VOKASIONAL BALIK PULAU


NOTA KULIAH 3
SEMESTER SEMESTER 3 DVM SESI 2017 / 2020

JABATAN JABATAN TEKNOLOGI MAKLUMAT

PROGRAM DIPLOMA TEKNOLOGI SISTEM PENGURUSAN PANGKALAN DATA & APLIKASI WEB

KOD/KURSUS DKA 3322 MOBILE PROGRAMMING I

KOMPETENSI 3.0 PERFORM MOBILE PROGRAM CODING


3.1 Mobile Programming Specification
3.1.1 Set mobile program specification
3.1.2 Identify application project structure
3.1.3 Determine naming convention in files and folders

3.2 Programming Platform Set Up


3.2.1 Create a simple mobile application project
3.2.2 Implements basic apps components

3.3 Develop Mobile Apps


3.3.1 Design user interface layout
3.3.2 Build mobile apps user interface UI with basic elements
KOMPETENSI UNIT 3.3.3 Setup developer view of mobile apps
3.3.4 Apply basic widgets
3.3.5 Implementing event handling

3.4 Test Application


3.4.1 Test on simulator/emulator
3.4.2 Test on real device

3.4 Apps Distribution


3.5.1 Identify apps distributor platform
3.5.2 Register to an apps distributor
3.5.3 Preparing for the apps for distribution

Trainee must be able to:


KOMPETENSI 1 Apply programming concept in mobile programming. (C3, PLO6)
PEMBELAJARAN 2 Build a simple mobile application. (P3, PLO2)
3 Comply with mobile application development process. (A2, PLO8)

NO KOD DKA 3322/K 03/NK 03


MUKA: 01 DARIPADA 27
NO KOD JPK -
DKA 3322 NK 02

SPESIFIKASI PENGATURCARAAN MUDAH ALIH

PEMBANGUNAN SPESIFIKASI
Spesifikasi merujuk kepada spesifikasi perkakasan dan spesifikasi perisian. Tujuan
spesifikasi ini adalah untuk memastikan aplikasi yang dibangunkan memenuhi objektif
dan menepati kehendak pengguna sasaran. Elemen dalam spesisfikasi ialah
perkakasan untuk sistem pembangunan dan sistem penyebaran (sistem main
semula), perisian, elemen yang akan dimasukkan, kebolehfungsian dan antaramuka
pengguna.

ELEMEN SPESIFIKASI
1. Perkakasan
Perkakasan berkeupayaan tinggi yang mampu menyokong elemen
multimedia.

2. Sistem pembangunan
Merujuk kepada perkakasan pembangunan yang akan digunakan.

3. Sistem penyebaran
Digunakan oleh pengguna akhir untuk memainkan aplikasi.

4. Kebolehfungsian
Bagaimana aplikasi bertindak balas dengan pengguna.

5. Antaramuka pengguna
Rekabentuk objek pada skrin dan interaksi dengan pengguna.

2 27
DKA 3322 NK 02

STRUKTUR PROJEK, FAIL DAN FOLDER

No. Folder, Fail & Keterangan

Java

1 Merupakan folder src yang mengandungi fail class Java seperti


MainActivity.java.

res/drawable-hdpi
2 Merupakan folder untuk menyimpan fail kompilasi gambar yang ditujukan
untuk skrin beresolusi tinggi (contoh fail XML dan bitmap)

res/layout
Merupakan folder mengandungi fail-fail XML yang mandefinisikan paparan
3
antaramuka/user interface aplikasi. Sebagai contoh, fail activity_main.xml.

3 27
DKA 3322 NK 02

No. Folder, Fail & Keterangan

res/values
4 Merupakan folder yang mengandungi fail XML yang mengandungi nilai-nilai
integer sederhana seperti colors, integers, strings.

AndroidManifest.xml
5
Merupakan fail XML yang mengandungi segala informasi penting yang
diperlukan oleh aplikasi kita untuk bekerja. Fail manifest ini juga
mengandungi nama dari paket Java aplikasi lita, komponen aplikasi seperti
activities atau beckground service, informasi minimum platform yang dapat
menjalankan aplikasi kita (kita yang menentukan sendiri),
izin/permission dari aplikasi kita.

Build.gradle
6 Merupakan auto generated fail yang mengandungi compileSdkVersion,
buildToolsVersion, applicationId, minSdkVersion, targetSdkVersion,
versionCode dan versionName.

4 27
DKA 3322 NK 02

PEMBINAAN PLATFORM PENGATURCARAAN

Pengaturcaraan yang terlibat adalah pembangunan aplikasi Hello World.

The Main Activity File

The Manifest File

5 27
DKA 3322 NK 02

The Strings File

The Layout File

Running Application

6 27
DKA 3322 NK 02

PEMBANGUNAN APLIKASI MUDAH ALIH

MEREKABENTUK ANTARAMUKA PENGGUNA


Merekabentuk Antaramuka Pengguna (UI) adalah salah satu tugas yang paling
penting dalam pembangunan kerana ia adalah satu-satunya bahagian dilihat oleh
pengguna jadi kita mesti cuba untuk membuat paparan antaramuka yang mudah
difahami.

BLOK BINAAN ASAS UNTUK UI IALAH VIEW OBJECT (DIBUAT DARI VIEW
CLASS)
View adalah satu objek yang menarik dan interaktif di mana pengguna boleh
berinteraksi dengannya. ViewGroup adalah objek yang memegang View lain atau dan
objek ViewGroup untuk menentukan susun atur antara muka pengguna. ViewGroup
berasal dari View manakala Layout berasal dari ViewGroup.

Perbezaan antara ViewGroup dan Layout ialah ViewGroup adalah kelas yang tidak
dapat dilihat dan abstrak tetapi Layout adalah bentuk yang boleh dilihat.

Blok binaan asas untuk antaramuka pengguna adalah View objek yang dicipta dari
kelas View yang terletak pada skrin dan bertanggungjawab untuk ‘melukis’ dan
pengendalian acara (event handling). Kelas View yang asas untuk widget, di mana ia
digunakan untuk mewujudkan komponen UI interaktif adalah seperti butang (button),
medan teks (text boxes), labels dan lain-lain

ANDROID UI (DESIGN LAYOUT)


Layout adalah seni bina untuk antara muka pengguna dalam sesuatu aktiviti. Ia
bermaksud satu struktur susun atur yang mengandungi semua unsur-unsur yang
muncul kepada pengguna. Layout adalah sambungan kumpulan view digunakan untuk
kawalan kedudukan (widget) untuk Layouts UI yang membolehkan anda untuk
membuat kompleks UI. Jenis-jenis paparan Android:
1. LinearLayout
2. RelativeLayout
3. TableLayout
4. AbsoluteLayout
5. FrameLayout
6. ListView
7. GridView

7 27
DKA 3322 NK 02

No Jenis Paparan
Keterangan
Android
1 Linear Layout • Linear Layout adalah paparan
kumpulan yang direkabentuk dalam
satu arah sama ada menegak atau
melintang.

2 Relative Layout • Relative Layout adalah paparan


dalam kedudukan sama ada ke
kanan, kiri, depan atau belakang.
• Rekabentuk ini sangat berguna
kerana dapat mengelakkan
ViewGroups yang berkelompok.

8 27
DKA 3322 NK 02

No Jenis Paparan
Keterangan
Android

3 Table Layout • Table Layout adalah paparan


yang mengandungi elemen
baris dan kolum
• Mempunyai struktur seperti table
html.
• Table Layout = <table>
• TableRow = <tr>
• Android TableLayout menjadi
kumpulan pandangan disusun
dalam baris dan lajur. Anda akan
menggunakan <TableRow> untuk
membina berturut-turut dalam
jadual. Setiap baris mempunyai
sifar atau lebih sel; setiap sel boleh
memegang satu objek View.

9 27
DKA 3322 NK 02

No Jenis Paparan
Keterangan
Android

4 Absolute Layout • Layout yang memaparkan item


dalam 2 dimensi grid.
• Absolute Layout membolehkan
anda menentukan lokasi tepat
(x / y koordinat) setiap elemen di
mana ia menyusun atur secara
Absolute dalam keadaan kurang
fleksibel dan sukar untuk dikekalkan
daripada lain-lain jenis susun atur
tanpa pemposisian mutlak.

10 27
DKA 3322 NK 02

No Jenis Paparan
Keterangan
Android

5 Frame Layout • FrameLayout direka untuk


menghalang kawasan pada skrin
untuk memaparkan item tunggal. Ia
juga merupakan layout tempat
untuk mengelempokkan
beberapa atribut yang akan
dipaparkan ke skrin.

11 27
DKA 3322 NK 02

No Jenis Paparan
Keterangan
Android
6 List View • Ia merupakan kumpulan
pandangan yang memaparkan
senarai item secara bergilir. Item
senarai dimasukkan secara
automatik ke dalam
senarai menggunakan penyesuai
yang menarik kandungan dari
sumber seperti array atau
pangkalan data.

7 Grid View • Ia merupakan ViewGroup yang


memaparkan item dalam dua
dimensi, secara grid sama ada
melintang atau menegak.

12 27
DKA 3322 NK 02

JENIS-JENIS ANDROID UI CONTROLS


No. Jenis-jenis UI Controls Keterangan
1 Text View Ia digunakan untuk memaparkan teks
pada paparan pengguna.

2 Edit View Ia merupakan subclass untuk TextView


di mana ia mengandungi keupayaan
untuk menyunting (edit).

3 AutoCompleteTextView AutoCompleteTextView adalah satu


paparan yang menyamai EditText cuma
berbeza kerana ia menunjukkan senarai
cadangan semasa pengguna
memasukkan input.

4 Button Ia merupakan satu butang yang boleh


ditekan, klik oleh pengguna untuk
melaksanakan sesuatu tugas.

5 Image Button ImageButton AbsoluteLayout


membolehkan pengguna mengenal
pasti lokasi sebenar sesuatu butang.

13 27
DKA 3322 NK 02

No. Jenis-jenis UI Controls Keterangan


6 Check Box Merupakan satu butang yang berupaya
untuk on/off secara bergilir-gilir oleh
pengguna. Penggunaan checkbox
sesuai jika pengguna ingin memilih
lebih dari satu pilihan dalam satu masa.
Sebagai contoh, pilihan makanan
kegemaran.

7 Toggle Button Butang on/off yang mempunyai


petunjuk cahaya. Sebagai contoh, slide
right to unlock screen.

8 RadioButton RadioButon mempunyai 2 keadaan iaitu


checked atau unchecked.

9 RadioGroup RadioGroup digunakan untuk satu atau


lebih penggunaan RadioButtons.

10 ProgressBar Progress bar menyediakan maklum


balas visual tentang tugas-tugas yang
sedang diselesaikan, sebagai contoh
apabila pengguna sedang
melaksanakan tugas memuat turun fail.

14 27
DKA 3322 NK 02

No. Jenis-jenis UI Controls Keterangan


11 Spinner Spinner membenarkan pengguna
memilih item yang berkaitan dengan
item yang dipilih daripada senarai
dropdown menu.

12 TimePicker Timepicker membolehkan pengguna


untuk memilih masa, sama ada dalam
format 24-jam atau format AM / PM.
Sebagai contoh, menetapkan tarikh
dalam telefon mudah alih pada
bahagian setting Date & Time.

13 DatePicker DatePicker membolehkan pengguna


memilih tarikh dengan interaktif dengan
hanya memilih mengikut hari, bulan dan
tahun. Sebagai contoh, menetapkan
tarikh dalam telefon mudah alih pada
bahagian setting Date & Time.

15 27
DKA 3322 NK 02

PELAKSANAAN EVENT HANDLING


Event adalah cara yang berguna untuk mengumpul data tentang interaksi pengguna
dengan komponen interaktif yang terlibat dalam aplikasi. Seperti menekan butang atau
skrin sentuh dan lain-lain rangka kerja, Android mengekalkan barisan acara seperti
yang pertama keluar tiba dahulu masuk (FIFO). Anda boleh menangkap peristiwa-
peristiwa ini dalam program anda dan mengambil tindakan sewajarnya mengikut
keperluan.

Visual Event Listener & Event Handler

Event Handler Event Listener & Keterangan


onClick () onClickListener()
Ia dipanggil apabila pengguna klik atau
sentuhan atau memberi tumpuan kepada
mana-mana widget seperti butang, teks,
imej dan lain-lain.

onLongClick () onLongClickListener()
Ia dipanggil apabila pengguna sama ada klik
atau sentuhan atau memberi tumpuan
kepada mana-mana widget seperti butang,
teks, imej dan lain-lain untuk satu atau lebih
1 saat.

16 27
DKA 3322 NK 02

Event Handler Event Listener & Keterangan


onFocusChange () onFocusChangeListener()
Ia dipanggil apabila widget kehilangan
fokus. Sebagai contoh, jika pengguna
ingin login facebook, medan nama
pengguna akan akan hilang dari ruang
pandangan sebaik sahaja pengguna
inginmemasukkan data.
onKey () onFocusChangeListener()
Listener ini akan dipanggil apabila fokus
pengguna berubah dari satu view ke view
yang lain. Sebagai contoh pengguna
masukkan input bagi nama setelah itu
pengguna masukkan input bagi umur.
Perubahan ini akan dilaksanakan apabila
listener dipanggil. Satu lagi contoh mudah,
apabila pengguna mengisi maklumat secara
atas talian iaitu nama seterusnya alamat
email. Listener akan berperanan untuk
menentusah sama ada input yang
dimasukkan pada nama tidak boleh
dimasukkan untuk medan alamat email.
onTouch () onTouchListener()
Ia dipanggil apabila pengguna menekan
kekunci, mengeluarkan kunci, atau mana-
mana isyarat pergerakan pada skrin sebagai
contoh draw pattern for unlockscreen.
onMenuItemClick () onMenuItemClickListener()
Ini dipanggil apabila pengguna memilih
item menu.
onCreateContextMenu () onCreateContextMenuItemListener()
Ia dipanggil apabila kandungan menu dibina

17 27
DKA 3322 NK 02

KITARAN AKTIVITI ANDROID


1. KAEDAH AKTIVITI
Di dalam Activity terdapat dua kaedah iaitu onCreate() dan
Context.startActivity(). onCreate() merupakan kaedah memulakan suatu
aktiviti. Biasanya dipanggil dengan perintah setContentView(int) untuk
resource yang didefinisikan di layout UI (User Interface) mankala perintah
findViewById(int) untuk memanggil widget yang diperlukan UI.

Untuk penggunaan dengan Context.startActivity(), semua kelas perlu sesuai


dengan <activity> yang dideklarasikan dalam suatu paket di
AndroidManifest.xml.

2. KITARAN AKTIVITI
Aktiviti aplikasi Android dikelola oleh sistem yang dikenali sebagai activity
stack. Hal ini kerana pada waktu activity start, activity diletakkan pada
stack yang paling atas dan activity-activity yang sudah jalan, berjalan di
bawahnya sehingga ada activity yang baru.

Pada dasarnya, activity mempunyai tiga keadaan (state) iaitu:


a) Active/running merupakan keadaan activity berada pada posisi
atas stack.
b) Pause merupakan keadaan activity tidak digunakan atau tidak
diperlukan pada suatu masa tertentu, tetapi activity masih ada atau
visible.
c) Stopped merupakan keadaan activity pause, sistem boleh drop
activity ini dari sistem memori, activity kembali ke keadaan awal.

18 27
DKA 3322 NK 02

Kitaran Aktiviti Android

Berdasarkan gambar kitaran hidup Activity, terdapat tiga pengulangan yang berlaku
oleh Activity, iaitu:
a) Entire lifetime merupakan activity yang terjadi bermula dari onCreate()
sehingga dengan onDestroy().
b) Visible lifetime merupakan activity yang terjadi, bermula dari onCreate()
sehingga onStop().
c) Foreground lifetime merupakan activity yang terjadi di antara onResume() dan
onPause().

19 27
DKA 3322 NK 02

Proses Pembangunan .apk

Sebelum mengeksport aplikasi pada .apk, anda mesti mempunyai beberapa alat
(tools) iaitu :

20 27
DKA 3322 NK 02

PERCUBAAN APLIKASI

PERCUBAAN APLIKASI PADA EMULATOR (TEST ON SIMULATOR/EMULATOR)


Membangunkan aplikasi Android memerlukan perisian percubaan, sama ada pada
perkakasan fizikal, emulator atau simulator. Menggunakan perkakasan adalah
pendekatan yang terbaik, tetapi tidak semestinya yang paling praktikal. Dalam banyak
kes, ia boleh menjadi lebih mudah dan lebih kos efektif untuk mensimulasikan /
mencontohi Android perkakasan menggunakan salah satu daripada emulator
diterangkan di bawah.

Android SDK Emulator menerangkan bagaimana untuk menggunakan emulator yang


disediakan dengan Android SDK. Emulator ini boleh didapati untuk digunakan dalam
kedua-dua perisian iaitu Xamarin Studio dan Visual Studio.

Visual Studio Android Emulator menerangkan bagaimana untuk debug dan menguji
aplikasi Xamarin. Android pula menggunakan emulator Android yang dibina ke dalam
Visual Studio 2015. Emulator ini adalah agak cepat, tetapi ia tidak menyokong profil
peranti adat. Emulator ini adalah pilihan yang baik jika anda menggunakan Visual
Studio 2015 dan tidak perlu profil alat peranti.

21 27
DKA 3322 NK 02

Emulator dalam Android Studio

Dalam perisian Eclipse mempunyai emulator AVD (Android Virtual Device) yang
membantu dalam proses pembangunan aplikasi Android. Gambarajah di atas
menunjukkan emulator AVD yang digunakan dalam proses pembangunan.

Mengeksport permohonan anda sebagai fail APK (Android Pakej)


sebelum memuat naik ke pasaran Google Play

22 27
DKA 3322 NK 02

PERCUBAAN PADA PERANTI SEBENAR


Beberapa langkah seterusnya akan menyediakan peranti Android untuk debugging.
Pengilangan yang berbeza struktur pilihan menu adalah sedikit berbeza kepada yang
lain.
1. Klik Settings pada pilihan menu atau Setting app.
2. Klik Developer actions.
3. Tanda checkbox untuk USB Debugging
4. Sambung peranti Android ke USB system pembangunan anda. Anda boleh
melihat gambarajah di bawah pada Devices | Logcat subtab pada tab
Android, di bahagian bawah window Android Studio, Samsung GT 19100
telah dikesan:

Pengesanan nama peranti

5. Klik Play icon dari Android Studio pada bar alatan (toolbar), seperti yang kita
lakukan apabila menjalankan aplikasi pada emulator.
6. Apabila Choose device muncul, klik Choose running device dan kemudian di
atas peranti anda; dalam situasi ini, peranti anda ialah Samsung GT 19100.
7. Akhir sekali, klik OK untuk debug aplikasi anda di atas peranti yang telah di
pilih.

Sekarang anda boleh melihat aplikasi di peranti anda. Walaupun aplikasi dijalankan
di atas peranti yang sebenar, ianya masih berjalan di dalam mode debug jadi kita
boleh mendapat maklumbalas (feedback) tentang apa yang terjadi kepada aplikasi
yang telah dibangunkan.

23 27
DKA 3322 NK 02

PENGAGIHAN APLIKASI

JENIS-JENIS PASARAN APLIKASI SEDIA ADA (APPS MARKET)

24 27
DKA 3322 NK 02

PENGAGIHAN APLIKASI KE GOOGLE PLAY


Untuk mengeksport permohonan,
1. Membuka projek aplikasi dalam Android Studio
2. Pilih Build → Generate Signed APK dari Android Studio dan diikuti langkah-
langkah mudah untuk mengeksport permohonan anda.
3. Seterusnya pilih, Menjana pilihan APK Seperti yang ditunjukkan dalam pukulan
skrin di bawah
4. Kemudian klik di mana anda akan pilih Create new keystore untuk menyimpan
permohonan anda.

Membina APK

Masukkan laluan simpanan kunci anda (key storepath), kata laluan simpanan kunci
(key store password), kata kunci (key password) untuk melindungi aplikasi anda dan
klik pada butang Next sekali lagi. Ia akan memaparkan skrin untuk membolehkan anda
membuat permohonan yang berikut:

Destinasi Folder APK

25 27
DKA 3322 NK 02

Sebaik sahaja anda diisi semua maklumat, seperti destinasi app, membina jenis
dan perisa klik butang Finish walaupun mewujudkan satu aplikasi ia akan
menunjukkan seperti di bawah:

Paparan Gradle

Akhirnya, ia akan menjana Permohonan Android anda sebagai format fail APK
yang akan dimuat naik di Google Play.

Mengagihkan permohonan anda di Google Play adalah satu proses yang mudah
yang melibatkan tiga langkah asas:
1. Menyediakan bahan-bahan promosi
Bagi memanfaatkan sepenuhnya keupayaan pemasaran dan publisiti
Google Play, anda perlu membuat bahan-bahan promosi untuk
permohonan anda, seperti screenshot video, grafik dan teks promosi.

2. Mengkonfigurasi pilihan dan memuat naik asset


Google Play membolehkan anda menyasarkan permohonan anda di seluruh
dunia dari pengguna dan peranti. Dengan mengkonfigurasi pelbagai tetapan
Google Play, anda boleh memilih negara yang anda mahu untuk mencapai,
bahasa penyenaraian anda mahu menggunakan, dan harga yang anda mahu
untuk mengenakan di setiap negara. Anda juga boleh mengkonfigurasi butiran
penyenaraian seperti jenis aplikasi kategori, dan penilaian kandungan. Apabila
anda selesai pilihan mengkonfigurasi anda boleh memuat naik bahan-bahan
promosi anda dan permohonan anda sebagai (tidak diterbitkan) atau
permohonan draf.

3. Penerbitan mengikut versi keluaran permohonan anda


Jika anda berpuas hati bahawa tetapan penerbitan anda dikonfigurasi
dengan betul dan permohonan yang dimuat naik anda sedia untuk
dikeluarkan kepada orang ramai, anda hanya boleh klik Publish pada
bahgian pemaju dan dalam beberapa minit permohonan anda akan
disiarkan secara langsung dan boleh dimuat turun di seluruh dunia.

26 27
DKA 3322 NK 02

Paparan Google Play

Jika ingin memuat naik (upload) fail APK anda ke Google Play, biasanya

pendaftaran dikenakan bayaran. Langkah-langkah pendaftaran di Google Play

seperti berikut:

1. Pertama, perlu mempunyai akaun Gmail dan login ke dalam akaun

Gmail tersebut.

2. Kemudian,buka alamat : http://play.google.com/apps/publish/signup

3. Masukkan data untuk pendaftaran, kemudian klik tombol Continue.

4. Klik tombol I Agree Continue pada halaman berikutnya.

5. Pilih jenis bayaran Credit atau Debit, lalu klik tombol Agree and

Continue.

27 27

Anda mungkin juga menyukai