Skip to content

Android Project Files

Pengantar Struktur Proyek Aplikasi Android

Apa Itu Android Project?

Proyek aplikasi Android terdiri dari beberapa file sumber daya dan konfigurasi yang digunakan untuk membuat aplikasi berbasis Android. Dalam proses pengembangan, developer perlu memahami bagaimana file-file tersebut bekerja dan diatur.


1. AndroidManifest.xml – Inti Konfigurasi Aplikasi

Definisi

AndroidManifest.xml adalah file utama dalam proyek Android yang berisi informasi penting tentang aplikasi, seperti:

  • Nama paket aplikasi
  • Versi aplikasi
  • Aktivitas utama (MainActivity)
  • Izin yang diperlukan (permissions)
  • Komponen aplikasi lainnya: Service, BroadcastReceiver, ContentProvider

Contoh Isi AndroidManifest.xml

xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.aplikasiperdana">
    
    <uses-permission android:name="android.permission.INTERNET"/>

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/Theme.AplikasiPerdana">

        <activity
            android:name=".MainActivity"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

    </application>
</manifest>

Elemen Penting dalam AndroidManifest.xml

ElemenFungsi
<manifest>Elemen utama yang membungkus semua informasi aplikasi
<uses-permission>Mendeklarasikan izin yang dibutuhkan aplikasi
<application>Berisi properti aplikasi seperti ikon, tema, dan aktivitas
<activity>Mendefinisikan setiap layar aplikasi
<intent-filter>Menentukan cara aktivitas bisa diakses atau dijalankan

💡 Tips Belajar: Pastikan semua izin yang digunakan benar-benar diperlukan untuk menjaga keamanan aplikasi.


2. Uses-Permission – Kontrol Akses Fitur Perangkat

Apa Itu Uses-Permission?

Digunakan untuk mendeklarasikan hak akses aplikasi terhadap fitur atau data tertentu di perangkat pengguna.

Jenis-Jenis Izin Umum

IzinDeskripsi
INTERNETMengizinkan akses internet
ACCESS_FINE_LOCATIONMengakses lokasi akurat menggunakan GPS
CAMERAMenggunakan kamera perangkat
READ_EXTERNAL_STORAGEMembaca data dari penyimpanan eksternal
SEND_SMSMengirim SMS dari perangkat

Contoh Deklarasi Izin

xml
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

⚠️ Catatan: Di Android 6.0+ (API level 23), izin runtime harus diminta saat aplikasi berjalan, bukan hanya dideklarasikan di manifest.


3. Drawable – Sumber Daya Grafis

Definisi

Drawable adalah file grafis yang digunakan dalam antarmuka pengguna aplikasi Android, seperti gambar statis (PNG, JPG) atau bentuk vektor.

Jenis-Jenis Drawable

JenisPenjelasan
Bitmap DrawableUntuk menampilkan gambar seperti PNG atau JPG
Shape DrawableMembuat bentuk seperti kotak, lingkaran dengan XML
Layer List DrawableMenggabungkan beberapa drawable dalam satu tampilan
State List DrawableTampilan berubah sesuai kondisi (misalnya tombol ditekan)
Vector DrawableGambar berbasis vektor yang responsif di semua ukuran layar

Contoh Penggunaan Shape Drawable

xml
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="oval">
    <solid android:color="#FF5722"/>
    <size android:width="100dp" android:height="100dp"/>
</shape>

💡 Tips Belajar: Simpan semua file drawable di folder res/drawable.


4. TextView – Menampilkan Teks Statis

Definisi

Komponen UI untuk menampilkan teks statis kepada pengguna. Biasanya tidak bisa diedit oleh pengguna.

Karakteristik

  • Tidak bisa diedit (berbeda dengan EditText)
  • Bisa menampilkan teks dengan format HTML atau hyperlink
  • Dapat dikustomisasi warna, gaya, dan ukuran teks

Implementasi pada XML

xml
<TextView
    android:id="@+id/tulisan"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="Selamat Datang di Aplikasi Kami"
    android:textColor="#211C84"
    android:textSize="16sp"
    android:textStyle="bold"
    android:gravity="center"
    android:padding="16dp"
    android:background="#7A73D1"/>

5. EditText – Input Teks oleh Pengguna

Definisi

Komponen UI yang memungkinkan pengguna memasukkan atau mengedit teks.

Karakteristik

  • Mendukung input teks biasa, angka, email, password, dll.
  • Memiliki atribut hint sebagai panduan input
  • Bisa dikonfigurasi batas karakter

Implementasi pada XML

xml
<EditText
    android:id="@+id/input_nama"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:hint="Masukkan nama Anda"
    android:inputType="text"
    android:textSize="16sp"
    android:maxLength="50"/>

6. Button – Tombol Interaktif

Definisi

Elemen UI yang dapat diklik untuk menjalankan suatu aksi, seperti mengirim data atau berpindah halaman.

Karakteristik

  • Menjalankan aksi saat ditekan
  • Dapat dikustomisasi warna, teks, dan bentuk
  • Bisa dinonaktifkan dengan android:enabled="false"

Implementasi pada XML

xml
<Button
    android:id="@+id/btn_kirim"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Kirim"
    android:textSize="16sp"
    android:layout_margin="16dp"/>

7. ImageView – Menampilkan Gambar

Definisi

Komponen UI untuk menampilkan gambar atau ikon dalam aplikasi.

Karakteristik

  • Mendukung format PNG, JPG, GIF, WebP
  • Bisa dikustomisasi skala, rotasi, dan transparansi
  • Mendukung animasi dasar

Implementasi pada XML

xml
<ImageView
    android:id="@+id/logo_app"
    android:layout_width="100dp"
    android:layout_height="100dp"
    android:src="@drawable/logo_uin"
    android:scaleType="centerInside"/>

Ringkasan: Struktur Dasar Proyek Android

FolderKegunaan
res/layoutFile XML untuk antarmuka pengguna (UI)
res/drawableGambar dan shape drawable
res/valuesFile strings.xml, colors.xml, styles.xml
java/File Java/Kotlin untuk logika aplikasi
AndroidManifest.xmlFile konfigurasi utama aplikasi

Kesimpulan

Memahami struktur proyek Android sangat penting dalam pengembangan aplikasi mobile. Beberapa poin penting:

  • AndroidManifest.xml adalah file inti yang menyimpan informasi aplikasi.
  • Uses-permission harus dikelola dengan hati-hati untuk keamanan dan privasi.
  • Drawable digunakan untuk menampilkan gambar dan bentuk visual.
  • TextView, EditText, Button, dan ImageView adalah elemen UI dasar yang sering digunakan dalam desain antarmuka.