Tuesday, April 14, 2026

Arsitektur dan Activity

 



Arsitektur Android terdiri dari beberapa lapisan (layer) komponen yang saling bekerja sama untuk mendukung kebutuhan berbagai perangkat Android. Sistem Android dibangun di atas kernel Linux open-source, serta dilengkapi dengan berbagai library C/C++ yang diakses melalui application framework.

Di dalam arsitektur ini, Linux Kernel berperan sebagai inti sistem operasi (mengatur hardware, memori, proses, dll), sedangkan Android Runtime (termasuk Dalvik Virtual Machine/DVM atau ART) menyediakan lingkungan untuk menjalankan aplikasi Android.

1. Applications (Aplikasi)

Lapisan paling atas adalah aplikasi yang langsung digunakan oleh pengguna.

Contohnya:

  • Aplikasi bawaan (Contacts, SMS, Camera)
  • Aplikasi pihak ketiga (WhatsApp, Instagram, dll)

Aplikasi ini dibangun menggunakan bahasa seperti Java atau Kotlin dan berjalan di atas Android Runtime.

2. Application Framework

Lapisan ini menyediakan berbagai layanan (services) yang dapat digunakan oleh aplikasi.

Beberapa komponen penting:

  • Activity Manager → mengatur siklus hidup aplikasi
  • Window Manager → mengatur tampilan layar
  • Content Provider → berbagi data antar aplikasi
  • Resource Manager → mengelola resource (layout, string, dll)

Framework ini memudahkan developer karena tidak perlu mengakses hardware secara langsung.

3. Android Runtime

Lapisan ini bertanggung jawab untuk menjalankan aplikasi Android.

Terdiri dari:

  • Core Libraries → menyediakan fungsi dasar seperti struktur data, utilitas, dll
  • Dalvik Virtual Machine (DVM) atau ART (Android Runtime) → menjalankan bytecode aplikasi Android

Setiap aplikasi berjalan dalam proses terpisah untuk keamanan dan stabilitas.

4. Platform Libraries (Native Libraries)

Berisi kumpulan library berbasis C/C++ yang digunakan oleh berbagai komponen Android.

Contohnya:

  • SQLite → database
  • WebKit → engine browser
  • OpenGL → grafis
  • Media Framework → audio & video

Library ini memberikan performa tinggi untuk fungsi-fungsi penting.

Ada beberapa komponen dasar yang diperlukan dalam sebuah aplikasi Android. Komponen-komponen ini bersifat loosely coupled (tidak saling bergantung secara ketat) dan dihubungkan oleh file manifest aplikasi (AndroidManifest.xml), yang berisi deskripsi setiap komponen serta bagaimana mereka saling berinteraksi.

File manifest juga memuat berbagai informasi penting seperti:

  • Metadata aplikasi
  • Konfigurasi perangkat keras (hardware)
  • Kebutuhan platform (versi Android)
  • Library eksternal yang digunakan
  • Izin (permissions) yang diperlukan aplikasi

5. Linux Kernel

Lapisan paling bawah yang menjadi inti dari sistem operasi Android.

Fungsinya:

  • Manajemen memori
  • Manajemen proses
  • Driver perangkat (kamera, audio, display, dll)
  • Keamanan sistem

Kernel Linux memastikan komunikasi antara hardware dan software berjalan dengan baik.

Adapun komponen utama dalam sebuah aplikasi Android adalah sebagai berikut:

1. Activities
2. Services
3. Content Providers
4. Broadcast Receivers
5. Intents
6. Widgets
7. Notifications

Referensi


Latihan



Pengisian Form



Absensi





Tuesday, March 10, 2026

Jet Pack Compose - Text

 Jetpack Compose adalah toolkit modern untuk membangun user interface (UI) aplikasi Android menggunakan bahasa Kotlin secara deklaratif tanpa menggunakan XML layout.

Framework ini dikembangkan oleh Google sebagai bagian dari Android Jetpack untuk mempermudah pengembangan UI Android agar lebih sederhana, cepat, dan modern.

1. Struktur Utama Program

Kode ini terdiri dari dua bagian utama:

  1. MainActivity → Entry point aplikasi Android

  2. Composable Function (MyTextView) → Fungsi UI yang menampilkan teks

Arsitektur Jetpack Compose biasanya seperti ini:

MainActivity

setContent{}

Composable Function

UI Components (Text, Column, Row, dll)

2. Penjelasan Class MainActivity

class MainActivity : ComponentActivity() {
  • MainActivity adalah activity utama pada aplikasi Android.

  • ComponentActivity adalah class dasar yang mendukung Jetpack Compose.

Pada sistem Android lama biasanya:

Activity → setContentView(XML)

Sedangkan pada Jetpack Compose:

Activity → setContent { Composable }



Tuesday, April 22, 2025

Proyek - Mobile Front End

 


Proyek 1: Aplikasi To-Do List Personal

Judul Proyek: “Daily Task Manager”
Deskripsi: Buatlah aplikasi pengelola tugas harian yang memungkinkan pengguna menambahkan, menghapus, dan menandai tugas sebagai selesai.

Fitur Utama:

  • Input tugas dengan tanggal dan waktu deadline

  • Checkbox status tugas

  • Penyortiran berdasarkan deadline atau status

  • UI intuitif dan responsive (menggunakan Material Design)


Proyek 2: Aplikasi Resep Masakan

Judul Proyek: “ResepKita”
Deskripsi: Buat aplikasi front-end untuk menampilkan daftar resep masakan lengkap dengan gambar, bahan, dan langkah-langkah memasak.

Fitur Utama:

  • Tampilan daftar resep (ListView/RecyclerView)

  • Detail resep dengan gambar dan deskripsi

  • Pencarian resep berdasarkan nama atau bahan

  • Desain menarik, responsif, dan ramah pengguna


Proyek 3: Aplikasi Booking Tempat Olahraga

Judul Proyek: “BookSport”
Deskripsi: Aplikasi ini bertujuan untuk memudahkan pengguna memesan lapangan olahraga seperti futsal, badminton, atau basket.

Fitur Utama:

  • Tampilan daftar tempat olahraga

  • Formulir pemesanan dengan tanggal, waktu, dan pilihan jenis olahraga

  • Validasi input form

  • Tampilan konfirmasi pemesanan


Proyek 4: Aplikasi Catatan Keuangan Pribadi

Judul Proyek: “MyMoney Notes”
Deskripsi: Buat aplikasi sederhana untuk mencatat pengeluaran dan pemasukan harian.

Fitur Utama:

  • Input jenis transaksi (pemasukan/pengeluaran)

  • Pilih kategori dan nominal

  • Lihat daftar transaksi

  • Tampilan grafik sederhana (opsional menggunakan chart library untuk visualisasi)


Proyek 5: Aplikasi Galeri Foto Pribadi

Judul Proyek: “MyGallery”
Deskripsi: Aplikasi front-end untuk menampilkan galeri gambar lokal dari perangkat atau dari URL dummy.

Fitur Utama:

  • GridView/RecyclerView untuk menampilkan gambar

  • Halaman detail gambar

  • Simulasi upload (dummy)

  • Tampilan estetis, responsive, dan mendukung mode gelap

Ketentuan Pengumpulan

  • Tuliskan Title Aplikasi yang dibuat
  • Deskripsi Aplikasi dan Fitur
  • Foto Infografis Aplikasi - Thumbnail
  • PPT - Deskripsi, Desain, Cara Mengerjakan (dalam pdf)
  • Link Blog Anggota 1
  • Video Presentasi
  • Link Source Code
  • Link Aplikasi/ Download

Pengisian Form

Peserta


Absensi







Tuesday, April 8, 2025

Penggunaan Kotlin 1


Kotlin adalah bahasa pemrograman open source berjenis statis yang mendukung pemrograman berorientasi objek dan fungsional. Kotlin memberikan sintaksis dan konsep serupa dari bahasa lain, di antaranya termasuk C#, Java, dan Scala. Kotlin tidak dimaksudkan agar unik, melainkan mengambil inspirasi dari perkembangan bahasa selama puluhan tahun. Kotlin ada dalam varian yang menargetkan JVM (Kotlin/JVM), JavaScript (Kotlin/JS), dan kode native (Kotlin/Native).

Kotlin dikelola oleh Kotlin Foundation, sebuah grup yang didirikan oleh JetBrains dan Google, yang ditugaskan untuk mengembangkan dan melanjutkan pengembangan bahasa. Kotlin secara resmi didukung oleh Google untuk pengembangan Android. Artinya, dokumentasi dan alat Android didesain dengan mempertimbangkan Kotlin.

Android API tertentu, seperti Android KTX, khusus untuk Kotlin, tetapi sebagian besar ditulis dalam Java dan dapat dipanggil dari Java atau Kotlin. Interoperabilitas Kotlin dengan Java adalah inti dari pertumbuhannya. Artinya, Anda dapat memanggil kode Java dari Kotlin dan sebaliknya, serta memanfaatkan semua library Java yang ada. Popularitas Kotlin menghasilkan pengalaman pengembangan yang lebih baik di Android. Akan tetapi, pengembangan framework Android terus berlanjut dengan mempertimbangkan Kotlin dan Java.

Interoperabilitas Kotlin dengan Java bukan berarti Anda harus mengadopsi Kotlin sekaligus. Anda dapat memiliki project dengan kode Kotlin dan Java. Untuk informasi selengkapnya tentang menambahkan Kotlin ke aplikasi yang sudah ada, lihat Menambahkan Kotlin ke aplikasi yang sudah ada. Jika Anda adalah bagian dari tim berukuran besar, ukuran organisasi dan codebase mungkin memerlukan fokus khusus. Untuk tips dan informasi lainnya, lihat Mengadopsi Kotlin untuk tim berukuran besar.

Contoh function kotlin



Absensi





Referensi

https://www.idn.id/mengapa-kotlin-menjadi-masa-depan-bagi-pemrograman-android/
https://worldline.github.io/learning-kotlin/en/kotlin-features/
https://pl.kotl.in/FFDq2WbId
https://helgaagnizar.wordpress.com/2020/10/10/pemrograman-mobile-pertemuan-2-perkenalan-kotlin/
https://www.slideshare.net/slideshow/1-introduction-kotlinpptx/255224307

Sunday, June 30, 2024

Studi Kasus iSaku

 



i.saku adalah uang elektronik yang telah mendapat izin dari Bank Indonesia. Pakai i.saku memudahkan kamu untuk transaksi apa aja, mulai dari bayar belanja di Merchant, kirim uang, tarik tunai, dan bayar semua tagihan. Mudahkan hidupmu dalam bertransaksi dan nikmati ekstra untungnya pake i.saku.

Cara menjadi Mitra i.saku adalah

• Download Aplikasi Mitra i.saku
• Buka Aplikasi Mitra i.saku lalu pilih menu Daftar Sekarang
•Masukkan nomor HP yang ingin Anda daftarkan, tentukan PIN Anda, lalu klik tombol Selanjutnya.
• Akan ada kode verifikasi yang dikirimkan ke WhatsApp nomor terdaftar. Masukkan kode tersebut untuk melakukan verifikasi.
• Setelah melakukan verifikasi, silahkan login kembali di halaman awal menggunakan nomor HP dan PIN yang sudah didaftarkan, lalu lengkapi informasi usaha Anda.
• Selanjutnya, tim Mitra i.saku akan melakukan proses validasi data Anda terlebih dahulu. Proses validasi maksimal H+2. Jika proses validasi data sudah berhasil, maka anda akan menerima SMS.
• QRIS Statis untuk usaha Anda akan muncul pada menu Tampilkan QR di Aplikasi Mitra i.saku.






Wednesday, June 26, 2024

Studi Kasus - Alfamind



Alfamind merupakan toko virtual di mana pengguna atau store owner dapat memiliki toko Alfamart tanpa harus membangun toko tersebut secara fisik. Store owner tak perlu repot memikirkan stok dan distribusi barang, sebab hanya bermodalkan piranti cerdas (smartphone), mereka dapat menjual produknya langsung ke konsumen.

Alfamind merupakan bisnis digital yang dikembangkan oleh induk perusahaan dalam meningkatkan skala bisnis sekaligus menggenjot penjualan. Saat ini, Alfamind telah memiliki 3.500 store owner yang menjual produk UMKM dari 120 pemasok yang diseleksi oleh Alfamart.

Agar tak mendisrupsi bisnis Alfamart yang menjual produk kebutuhan sehari-hari, Alfamind fokus menjual produk-poduk UMKM berupa fesyen dan perabot rumah tangga, seperti panci dan piring. Hanya bermodalkan Rp 1.000.000 untuk deposito yang bisa digunakan untuk berbelanja produk, store owner bisa langsung memiliki toko Alfamart.

Fungsi utama dalam Alfamind

  • Screen Pembuka Alfamind
  • Sign Up/ Sign in Membership
  • View Barang Dagangan
  • Profile Store Owner
  • Top Up Saldo

https://play.google.com/store/apps/details?id=id.meteor.alfamind&hl=id

https://alfamind.id/


Pengumpulan

Isikan Form Jawaban Berikut

https://forms.gle/JGvoaFgkk15zkvDJ8

Yang sudah Submit, Lihat Link Berikut 

https://lookerstudio.google.com/reporting/6b210206-b019-4eae-b642-90a3acabb008

Untuk Edit Form, Silakan klik Link Berikut

https://lookerstudio.google.com/reporting/32c0053c-2d46-4c2b-8146-81b11f7d770f

Arsitektur dan Activity

  https://drive.google.com/file/d/1lQkyhKE2GbdvSykcKh41aYusgKu6cii-/view?usp=drive_link Arsitektur Android terdiri dari beberapa lapisan (la...