Lompat ke konten Lompat ke sidebar Lompat ke footer

Pengenalan Teknologi Android Studio Untuk Pemula

Teknologi Android Studio Untuk Pemula: Panduan Utama Anda Untuk Menguasai Alat Ini Dan Membangun Aplikasi Pertama Anda

Pengenalan Android

Android adalah sistem operasi berbasis Linux untuk telepon seluler. Android menyediakan platform open source bagi  pengembang untuk membangun aplikasi. Awalnya diakuisisi oleh Google Inc.  Android Inc., yang mengembangkan perangkat lunak ponsel di Palo Alto, California, AS. Open Handset Alliance,  konsorsium dari 3 perusahaan perangkat keras, perangkat lunak dan telekomunikasi termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile dan Nvidia, kemudian dibuat untuk mengembangkan Android. Ponsel pertama yang menggunakan sistem operasi Android adalah HTC Dream, yang dirilis pada 22 Oktober 2008. Hingga akhir tahun 2009, diperkirakan setidaknya ada 18 jenis ponsel yang menggunakan Android di dunia.

android studio, pengembangan android, tutorial android studio, panduan pemula

android studio, pengembangan android, tutorial android studio, panduan pemula

 Android adalah  sistem operasi untuk perangkat seluler yang mencakup sistem operasi, middleware, dan aplikasi. Android menyediakan platform terbuka bagi  pengembang untuk membuat aplikasi.

Awalnya, Google Inc. membeli Android Inc., pendatang baru dari pengembang perangkat lunak ponsel/smartphone, yang mendirikan Open Handset Alliance (OHA). Ada dua jenis distributor OS Android di dunia:

  1. Produk pertama yang menerima dukungan penuh untuk Layanan Google atau Gmail (GMS).
  2. Yang kedua tidak mendapat dukungan langsung dari Google atau  dikenal dengan Open Handset Distribution (OHD). Android adalah "platform sepenuhnya mobile pertama , terbuka dan gratis”.
    1. Lengkap (platform lengkap): Android adalah sistem operasi yang aman, menawarkan banyak alat untuk membuat perangkat lunak dan memungkinkan kemungkinan untuk  pengembangan aplikasi.
    2. Terbuka ( Platform Sumber Terbuka): Pengembang bebas  mengembangkan aplikasi.
    3. Gratis (Platform Gratis): Android adalah platform/aplikasi  untuk pengembangan gratis. Tidak ada lisensi atau biaya lisensi untuk dikembangkan di platform Android.

Arsitektur Android

Android dikembangkan oleh Open Handset Alliance, yang dipimpin oleh  perusahaan seperti Google. Android adalah open source dan berbasis Linux, sebuah sistem operasi untuk perangkat mobile seperti smartphone dan komputer tablet. 
Tim Google menyebut arsitektur Android sebagai tumpukan Android. Aplikasi Android berisi berbagai lapisan, masing-masing dengan tugasnya sendiri, sehingga kita dapat menyebutnya tumpukan. Sistem operasi Android adalah tumpukan komponen perangkat lunak yang secara kasar dibagi menjadi lima bagian dan empat lapisan utama, seperti yang ditunjukkan pada diagram arsitektur di bawah ini.
Arsitektur Android
Gambar: Arsitektur Android

  1. Kernel Linux : Kernel merupakan inti dari sistem operasi berbasis UNIX.  Kernel merupakan lapisan terdalam yang berada pada sistem operasi baik itu  Linux maupun Android. lapisan Ini memberikan tingkat abstraksi antara  perangkat hardware dan berisi semua driver hardware yang penting seperti  kamera, tombol, layar dll.
  2. Libraries : Layer ini berisi kumpulan libraries termasuk open source Web  browser engine, WebKit, library lib C, DB SQLite sebagai tempat  penyimpanan dan berbagi data aplikasi, libraries untuk menjalankan,  merekam audio dan video, libraries SSL bertanggung jawab untuk keamanan  Internet.
  3. Android Runtime : sekumpulan Library Java yang dikhususkan untuk Android.  Programmer Aplikasi Android membuat aplikasinya menggunakan bahasa  pemrograman Java.
  4. Application Framework menyediakan berbagai layanan tingkat yang lebih  tinggi untuk aplikasi dalam bentuk kelas Java. Pengembang aplikasi diijinkan  untukm embuat penggunaan Layanan ini dalam aplikasi mereka.
  5. Application : Layer ini berisi semua aplikasi Android yang biasa digunakan  langsung oleh user. Contoh dari aplikasi tersebut adalah Contack Books,  Browser, game dll.

Android Studio

Android Studio adalah Lingkungan Pengembangan Terpadu - Integrated  Development Environment (IDE) untuk pengembangan aplikasi Android. Android  Studio IDE resmi untuk pengembangan aplikasi Android, yang didasarkan pada  IntelliJ IDEA . Selain sebagai editor kode dan fitur developer IntelliJ yang andal, ()

Android Studio Web
Android Studio Web: https://developer.android.com/studio?hl=id

Struktur Proyek di Android Studio

Setiap proyek di Android Studio berisi satu atau beberapa modul dengan file  kode sumber dan file sumber daya. Jenis-jenis modul mencakup: 

  • Modul aplikasi Android
  • Modul Pustaka
  • Modul Google App Engine

Secara default, Android Studio akan menampilkan file proyek Anda dalam  tampilan proyek Android, seperti yang ditampilkan dalam gambar dibawah ini.  Tampilan disusun berdasarkan modul untuk memberikan akses cepat ke file  sumber utama proyek Anda.

Semua file versi terlihat di bagian atas di bawah Gradle Scripts dan masing masing modul aplikasi berisi folder berikut:

  • manifests: Berisi file AndroidManifest.xml.
  • java: Berisi file kode sumber Java, termasuk kode pengujian JUnit.
  • res: Berisi semua sumber daya bukan kode, seperti tata letak XML, string UI, dan gambar bitmap.

Siklus Hidup Aplikasi Android

Siklus Hidup Aplikasi Android
Gambar: Siklus Hidup Aplikasi Android
  1. onCreate() Method ini dipanggil saat activity pertama kali dibuat.
  2. onStart() Method ini dipanggil saat sebuah activity tampil ke pengguna.
  3. onResume() adalah saat Activity dibuka kembali, biasanya dieksekusi setelah onPause().
  4. onPause() Method ini dipanggil ketika activity di hentikan sementara (pause)  dan berikutnya ketika dijalankan kembali akan berada dalam posisi resume  dan memanggil method OnResume() .
  5. onStop() Method ini dipanggil ketika activity tidak lagi tampak kepada  pengguna.
  6. onRestart() Method ini dipanggil ketika acitivity dijalankan kembali setelah state Stop.
  7. onFreeze() Method ini dipanggil ketika activity berada dalam keadaan freeze  (tidak merespon) akibat sedang sibuk mengerjakan tugas tertentu pada sistem.
  8. onDestroy() Method ini dipanggil sebelum activity dihancurkan (destroy)  oleh sistem (baik secara manual maupun untuk kepentingan pelonggaran  memori.

Alasan Menjadi Pengembang Aplikasi Android

Terdapat beberapa alasan mengapa Android berkembang dengan pesat dan kenapa  developer sebaiknya membangun Aplikasi Android.

  1. Market Share
    Developer memiliki kesempatan untuk mengembangkan aplikasi untuk pasar  yang relatif baru dan sedang berkembang pesat. Keberadaan Android Market akan  menempatkan aplikasi yang dibuat oleh developer langsung kepada pengguna.  Pengguna tidak perlu mencari melalui internet untuk menemukan dan meng-install  aplikasi yang dibuat oleh developer. Pengguna cukup membuka Android Market  yang sudah ter-install di perangkat android pengguna dan mengakses aplikasi yang  pengguna butuhkan dan meng-install ke dalam perangkat android pengguna.
  2. Time to Market
    Terdapat Android APIs (Application Programming Interfaces) yang memudahkan  developer untuk membangun aplikasi dengan mudah dan waktu yang singkat.
  3. Open Platform
    Sistem operasi Android merupakan platform terbuka. Sehingga tidak merujuk  pada suatu perusahaan hardware atau suatu provider. Platform terbuka android memungkinkan perkembangan market dengan sangat cepat, karena semua  perusahaan hardware dan provider dapat membuat dan menjual perangkat  android. Source code android dapat di akses melalui at http://source.android.com,  untuk digunakan dan dimodifikasi sesuai kebutuhan perusahaan hardware, provider  atau developer aplikasi.
  4. Cross Compatibility
    Android dapat berjalan di berbagai perangkat dengan ukuran dan resolusi layar  yang berbeda. Android memiliki fitur yang membantu developer untuk  mengembangkan aplikasi yang compatible untuk berbagai perangkat (cross compatible application). Google memiliki feature detection yang mengatur agar  aplikasi yang dikembangkan oleh developer hanya berjalan di perangkat yang  compatible. Sebagai contoh, jika suatu aplikasi membutuhkan kamera depan (front facing camera) maka hanya perangkat android dengan kamera depan yang akan  dapat melihat aplikasi tersebut di Android Market. Suatu perangkat android harus  mengikuti suatu aturan untuk mendapatkan sertifikat kesesuaian terhadap Android  Market untuk memastikan aplikasi dapat berjalan diatasnya, diantaranya  keberadaan:
    1. Kamera
    2. Kompas
    3. GPS (Global Positioning System)
    4. Bluetooth Transceiver
    5. Mashup Capability
      Mashup Capability merupakan kemampuan untuk mengkombinasikan dua atau  lebih layanan untuk mengembangkan suatu aplikasi. Sebagai contoh, developer  dapat membuat mashup dengan menggunakan kamera dan GPS, sehingga  terbangun aplikasi pengambilan photo dengan dilengkapi secara tepat lokasi  pengambilannya. Beberapa contoh lain mashup yang mungkin dikembangkan dalam  suatu aplikasi, yaitu:
      1. Geolocation dan Social Networking : Suatu aplikasi yang secara otomatis melakukan tweet posisi pengguna setiap 10 menit.
      2. Geolocation dan Gaming : Location-based gaming merupakan model game yang  saat ini popular. Game memiliki background services untuk mengecek posisi pengguna dan membandingnya dengan posisi pengguna yang lain di area yang  sama. Jika jarak antara pengguna kurang dari 1 km misal, maka akan diberikan  notifikasi dan memungkinkan mereka untuk bertarung melalui game tersebut.

Dasar Pemrograman Android

Membangun Aplikasi Android sangat mudah, default untuk bahasa pemrograman  yang digunakan oleh Android adalah java. Tidak semua fitur java yang ada digunakan  akan tetapi sebagian dari java yang sering disebut dengan Dalvik Virtual Machine.  Beberapa bagian kecil dari framework Android menggunakan bahasa XML untuk  scripting-nya.

  1. Activity Activity merupakan container untuk User Interface (UI). Sebuah Aplikasi Android  terbangun dari satu atau beberapa Activity.
  2. Intens Intent merupakan sistem pesan utama yang menjalankan Android. Intent terdiri dari Action yang harus dijalankan (Tampil, Ubah, Dial, dll) dan Data. Intent digunakan untuk memulai aktivitas dan komunikasi antar bagian dari sistem Android. Suatu aplikasi dapat mengirimkan atau menerima intent.
  3. Mengirimkan pesan dengan Intent Ketika suatu aplikasi mengirimkan suatu intent, aplikasi mengirimkan pesan memberitahukan Android untuk menjalankan sesuatu. Misal: memberitahukan Android untuk menjalankan suatu Activity dari aplikasi atau menjalankan aplikasi lain.
  4. Mendaftarkan Intent Receiver 
    Mengirimkan pesan dengan Intent bukan berarti sesuatu selanjutnya akan terjadi secara otomatis. Aplikasi harus mendaftarkan intent receiver yang memperhatikan intent dan memberitahukan Android apa yang harus dilakukan. Contoh, jika pengguna menekan lama suatu image di image gallery, maka akan memunculkan context menu yang berkaitan dengan image sharing. Dikarenakan terdapat beberapa receivers yang didaftarkan berkaitan dengan image sharing (email, messaging, Bluetooth, dll) maka context menu dimunculkan untuk memberikan opsi keputusan kepada penguna.
  5. Cursorless Controls 
    Perangkat Android menggunakan jari pengguna sebagai input. Jika pada computer biasa digunakan pointer mouse, kemudian left-click untuk berinteraksi dengan suatu tombol missal, maka pengguna Android dapat menggunakan jarinya langsung ke tombol. Untuk menggantikan right-click, pengguna Android dapat menekankan jarinya agak lama ke layar, kemudian context menu akan muncul.
  6. Views dan Widgets 
    View merupakan elemen dasar UI (User Interface). Sebagai contoh area kotak pada layar yang bertanggung jawab untuk tampilan dan menerima event (event handling). Beberapa contoh view antara lain:
    • ContextMenu
    • Menu
    • View
    • SurfaceView

    Widgets adalah elemen UI yang lebih canggih. Merupakan control untuk interaksi antara sistem dengan pengguna. Beberapa contoh Widgets antara lain:
    • CheckBox
    • DatePicker
    • DigitalClock
    • Gallery
    • FrameLayout
    • ImageView
    • RelativeLayout
    • PopupWindow

    Untuk mempelajari widgets lebih lanjut dapat dilihat melalui url:
    http://developer.android.com/reference/android/widget/package-summary.html
  7. Asynchronous Calls
    Android memiliki sebuah class yang AsyncTask yang memungkin aplikasi menjalan  beberapa operasi pada waktu yang bersamaan, tanpa harus mengatur bagaimana  thread berjalan secara khusus. AsyncTask memungkin developer untuk membangun  model program yang bersih untuk proses-proses asinkron.
    Proses asinkron biasa digunakan untuk proses-proses yang membutuhkan waktu  lama, misal: Network Communication (Internet), Media Processing, dan berbagai  proses lain yang mengharuskan pengguna menunggu. Jika pengguna harus  menunggu, maka dapat digunakan proses asinkron untuk menampilkan UI yang  memberitahukan pengguna apa yang terjadi.
  8. Background Services
    Services merupakan aplikasi yang berjalan di belakang dan tidak terlalu penting  memiliki UI, sebai contoh: antiivirus. Sebagian besar pemutas music (music player)  dari Android Market berjalan sebagai Background Services, yangmana pengguna  dapat mendengarkan musik sembali mengecek e-mail atau melakukan tugas lain  yang membutuhkan penggunaan tampilan layar.

Fitur Hardware Android

Perangkat Android memiliki beberapa fitur perangkat keras didalamnya, yang dapat  dimanfaatkan developer dalam membangun aplikasi. 

  1. Touchscreen
    Perangkat Android memiliki fitur layar sentuh (touchscreen) yang memberikan  beberapa kemungkinanan bagi pengguna untuk berinteraksi dengan aplikasi dengan  menggunakan jari. Pengguna dapat melakukan swipe, flip, drag, dan pinch untuk  zoom. Android juga mendukung multitouch yang berarti keseluruhan layar dapat  disentuh dengan satu atau lebih jari pada saat yang bersamaan.
  2. GPS
    Sistem operasi Android mendukung GPS yang memungkinkan developer untuk  mengakses lokasi pengguna. Contoh aplikasi yang memanfaatkan GPS adalah Aplikasi Peta (Map) yang menunjukkan lokasi pengguna dan memberikan petunjuk  untuk menuju suatu lokasi.
  3. Accelerometer
    Android mendukung Accelerometer, yaitu perangkat yang digunakan untuk  mengukur percepatan. Accelerometer dapat memberitahukan apabila suatu  Perangkat Android bergerak, atau terguncang, atau berbalik arah posisinya.
  4. SD Card
    Android memiliki fitur yang memungkinkan pengguna atau aplikasi untuk mengakses  (menyimpan atau membuka) file pada SD Card. SD Card merupakan media  penyimpanan medium yang digunakan Perangkat Android dan beberapa perangkat  mobile lain non Android sebagai media penyimpanan.

Fitur Software Android

Android memiliki banyak fitur perangkat lunak yang dapat digunakan oleh developer  dalam mengembangkan aplikasi. Beberapa fitur populer yang akan dijabarkan disini.

  1. Internet
    Kemampuan akses internet pada Android memberikan banyak keunggulan. Berbagai  informasi secara real-time dapat diperoleh dengan mudah dengan internet. Contoh,  sebagai pengguna, dapat menggunakan internet untuk melihat jadwal pemutaran  film bioskop, cuaca suatu area, jadwal penerbangan dan lainnya. Sebagai developer,  dapat menggunakan internet untuk akses secara real-time kepada data, update data.  Developer juga dapat menggunakan internet untuk menyimpan berbagai asset  untuk kemudian digunakan suatu aplikasi, seperti dilakukan Pandora dan YouTube.  Dengan internet dapat dibangun model aplikasi yang disebut client-server  computing. Contoh lain, aplikasi peta, mengakses data peta dan GPS dari web server.
  2. Audio dan Video Support
    Sistem operasi Android memungkinkan developer menyertakan audio dan video  dalam aplikasi dengan mudah. Berbagai standar format audio dan video didukung.
  3. Contact
    Android memungkinkan akses ke contacs yang tersimpan dapat Perangkat Android.  Developer dapat menggunakan fitur ini untuk menampilkan contacts dalam cara  baru yang berbeda. Hal lain yang dapat dilakukan adalah membangun aplikasi yang  menggabungkan antara contacts dengan GPS, yang memberikan notifikasi kepada  pengguna jika pengguna berada di dekat alamat satu contact yang ada.
  4. Security
    Android memungkinkan aplikasi untuk melakukan banyak hal. Akan tetapi Android  juga menyiapkan mekanisme keamanan berupa permission berkaitan dengan  beberapa tugas. Contoh: Download image dan menyimpannya di SD Card, maka  harus disetujui terlebih dahulu permission untuk mengakses SD Card.
  5. Google APIs
    Sistem operasi Android memungkinkan dengan tidak terbatas membuat panggilan  telepon, mengorganisasi contacts atau meng-install aplikasi. Developer dapat  mengintegrasikan peta (map) ke dalam suatu aplikasi dengan menggunakan Maps  API yang mengandung Map Widgets. Berbagai fitur dapat ditambahkan dengan  Maps API, antara lain:
    1. Menampilkan suatu lokasi di peta.
    2. Mendapatkan panduan navigasi
    3. Komunikasi data antara aplikasi dengan clouds.

Posting Komentar untuk "Pengenalan Teknologi Android Studio Untuk Pemula"