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 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:
- Produk pertama yang menerima dukungan penuh untuk Layanan Google atau Gmail (GMS).
- Yang kedua tidak mendapat dukungan langsung dari Google atau dikenal dengan Open Handset Distribution (OHD). Android adalah "platform sepenuhnya mobile pertama , terbuka dan gratis”.
- Lengkap (platform lengkap): Android adalah sistem operasi yang aman, menawarkan banyak alat untuk membuat perangkat lunak dan memungkinkan kemungkinan untuk pengembangan aplikasi.
- Terbuka ( Platform Sumber Terbuka): Pengembang bebas mengembangkan aplikasi.
- Gratis (Platform Gratis): Android adalah platform/aplikasi untuk pengembangan gratis. Tidak ada lisensi atau biaya lisensi untuk dikembangkan di platform Android.
Arsitektur Android
Gambar: Arsitektur Android |
- 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.
- 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.
- Android Runtime : sekumpulan Library Java yang dikhususkan untuk Android. Programmer Aplikasi Android membuat aplikasinya menggunakan bahasa pemrograman Java.
- 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.
- 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: 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
Gambar: Siklus Hidup Aplikasi Android |
- onCreate() Method ini dipanggil saat activity pertama kali dibuat.
- onStart() Method ini dipanggil saat sebuah activity tampil ke pengguna.
- onResume() adalah saat Activity dibuka kembali, biasanya dieksekusi setelah onPause().
- onPause() Method ini dipanggil ketika activity di hentikan sementara (pause) dan berikutnya ketika dijalankan kembali akan berada dalam posisi resume dan memanggil method OnResume() .
- onStop() Method ini dipanggil ketika activity tidak lagi tampak kepada pengguna.
- onRestart() Method ini dipanggil ketika acitivity dijalankan kembali setelah state Stop.
- onFreeze() Method ini dipanggil ketika activity berada dalam keadaan freeze (tidak merespon) akibat sedang sibuk mengerjakan tugas tertentu pada sistem.
- 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.
- 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. - Time to Market
Terdapat Android APIs (Application Programming Interfaces) yang memudahkan developer untuk membangun aplikasi dengan mudah dan waktu yang singkat. - 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. - 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: - Kamera
- Kompas
- GPS (Global Positioning System)
- Bluetooth Transceiver
- 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: - Geolocation dan Social Networking : Suatu aplikasi yang secara otomatis melakukan tweet posisi pengguna setiap 10 menit.
- 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.
- Activity Activity merupakan container untuk User Interface (UI). Sebuah Aplikasi Android terbangun dari satu atau beberapa Activity.
- 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.
- 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.
- 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. - 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. - 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 - 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. - 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.
- 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. - 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. - 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. - 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.
- 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. - Audio dan Video Support
Sistem operasi Android memungkinkan developer menyertakan audio dan video dalam aplikasi dengan mudah. Berbagai standar format audio dan video didukung. - 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. - 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. - 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:- Menampilkan suatu lokasi di peta.
- Mendapatkan panduan navigasi
- Komunikasi data antara aplikasi dengan clouds.
Posting Komentar untuk "Pengenalan Teknologi Android Studio Untuk Pemula"