TUGAS PEMROGRAMAN MOBILE 2
PERTEMUAN 11
Disusun Oleh Kelompok 1 dengan anggota :
Syamsul falah 16.11.0029
Muhammad Aris nur Aziz 16.11.0046
Linatun Masrohah 16.11.0055
ZaenurRochman 16.11.0068
Yahya Dani Lisharyanto 16.11.0070
Muhammad Ali Hasani 16.11.0071
Muhammad Yunus 16.11.0076
Sofyan Fathur Rohim 16.11.0082
Hamid Ashari 16.11.0086
Asep Tri Wibowo 16.11.0091
Firmansah Putra 16.11.0093
STMIK AMIKOM PURWOKERTO
2018
CUSTOM LIBRARY
Contoh Custom Library
Library merupakan layer tempat fitur-fitur tambahan android berada.
Pada umumnya library diakses untuk mempermudah atau mempercepat pembuatan suatu aplikasi.
A. Interface
- Duo Navigation Drawer
Library ini menyediakan cara mudah membuat navigasi alternatif untuk android, perpindahan suatu aktivity menjadi lebih menarik bila dilihat dari tampilanya aktivity utama akan berpindah dan digantikan oleh aktivity atau menu lainya.
Secara default, ini berlaku efek perputaran pada konten dan menu.
- MP Android Chart
MP Android Chart adalah library yang menyediakan sebuah grafik, berguna jika aplikasi yang anda develop berkaitan dengan sebuah data yang dimana datanya perlu anda gambarkan menjadi sebuah grafik. Tentunya akan senang jika data yang disajikan dapat ditampilkan dalam bentuk chart (grafik).
Beberapa pilihan grafik yang bisa anda coba:
- Simple Bar Chart
- Grouped Bar Chart
- Horizontal Bar Chart
- Simple Line Chart
- Line Chart with Cubic Lines
- Grouped Line Chart
- Combined Line and Bar Chart
- Pie Chart
- Scatter Chart
- Candlestick Chart
- Radar Chart
- Navigation bar icons morphing
Library ini menyediakan navigasi yang sangat menarik karena pada perpindahan suatu menu, icon akan berpindah dan menandakan menu tersebut aktif.
Library ini didevelop oleh Ahmed Tarek (tarek360) pada tanggal 17 Agustus 2017 dan masih tergolong baru, library Navigation bar icons morphing mendukung Min SDK 14 (Android 4.0–4.0.2 Ice Cream Sandwich)
- Alerter
Alerter merupakan library yang digunakan untuk mendukung pembuatan aplikasi android, library ini digunakan untuk memberi pemberitahuan ataupun peringatan . Pada dasarnya ini bertujuan untuk mengatasi keterbatasan Toasts dan Snackbars, sekaligus mengurangi kompleksitas layout yang kalian buat dalam membuat aplikasi android.
Library mendukung Min SDK 16 (Android 4.1 Jelly Bean)
Library didevelop oleh Tapadoo pada 16 Februari 2017
- Lottie
Lottie adalah animasi library yang dibangun oleh Airbnb dimana penggunaanya digunakan untuk memberikan animasi secara real time, dalam library ini animasi Adobe After Effects yang diekspor sebagai JSON dengan Bodymovin yaitu plugin After Effects untuk mengekspor animasi ke SVG / Canvas / HTML + JavaScript dan membuatnya secara native di mobile. Ada juga contoh aplikasi yang tersedia di Google Play Store, lebih dari 7.500 pengguna Github yang memakai library ini.
B. Database
- ORM Library
ORM (Object Relational Mapping) adalah metode pemrograman yang digunakan untuk mengkonversi data dari lingkungan bahasa pemrograman berorientasi objek (OOP) dengan lingkungan database relasional. Seperti kita ketahui, dalam aplikasi enterprise kedua lingkungan tersebut berada pada sistem yang berbeda, yaitu OOP berada pada sisi pemrograman aplikasi, sedangkan database relasional berada pada sisi sistem database. Misi utama dari ORM ini adalah menjembatani kedua sistem yang berbeda dalam membuat aplikasi android tersebut.
Berikut ini adalah beberapa kelebihan yang dimiliki ORM, yaitu:
- Mempercepat pengembangan program contohnya, mengurangi perulangan kode query, memudahkan pemakaian karena tabel-tabel ter-epresentasikan dalam bentuk objek.
- Membuat akses data menjadi lebih abstrak dan portable.
- Hal ini dikarenakan ORM menghandle pen-generate-an syntax SQL berdasarkan vendor database-nya.
- Mensupport pengkapsulan business rule pada lapisan Data Access.
- Men-generate boilerplate code (unit kode yang reusable) untuk fungsi dasar CRUD (Create, Read, Update, Delete).
- Dalam membuat aplikasi android teman teman dapat menggunakan library ORM diantaranya adalah Active Android, Sprinkles, sugarORM.
C. Network
- Retrofit
Retrofit merupakan library android yang dibuat oleh Square yang digunakan sebagai REST Client pada Android, yang pasti akan memudahkan kita. Karena kita tidak perlu lagi untuk membuat method-method sendiri untuk menggunakan REST Client API dari backend. Library ini menyediakan framework yang powerfull untuk authenticating dan berinteraksi dengan API dengan mengirimkan request menggunakan OkHTTP
- Volley
Volley merupakan produk yang diperkenalkan oleh Google untuk mempermudah pertukaran data tanpa harus membuat deretan kode yang sangat panjang. Secara default volley menggunakan metode singkronisasi jadi anda tidak perlu membuat sebuah method atau fungsi yang menggunakan class asynctask.
Melakukan sebuah request queuing and prioritization (Mengutamakan prioritas dalam sebuah antrian)
3. Fast Android Networking
Adalah sebuah library sama seperti librarylainya namun perbedaanya yaitu library ini memiliki banyak fitur yang tidak ada di library Retrofit. Dan tentunya lebih lengkap dibandingkan Retrofit maupun volley.
Library ini mendukung semua jenis HTTP/HTTPS permintaan seperti GET, POST, DELETE, HEAD, PUT, PATCH.
D. Multimedia
- ExoPlayer
ExoPlayer adalah sebuah android library open source yang berfungsi untuk mengolah media di android. Jadi dengan ExoPlayer ini memungkinkan kita untuk bisa mengolah video dan juga audio.
Sebenarnya di android itu secara default kita bisa menggunakan MediaPlayer untuk urusan play audio dan play video dengan mudah namun MediaPlayer ini akan menjadi masalah jika kita berurusan dengan berbagai macam device artinya setiap devices itu memiliki media player yang berbeda - beda dimana dengan begitu kita sebagai developer akan mengalami kesulitan untuk melakukan debugingdari aplikasi yang sedang dikembangkan.
Berikut fitur menarik dalam library Exoplayer:
a. Tunneled video playback
Sejak di keluarkan android Lollipop (API tingkat 21), memungkinkan perangkat Android untuk menerapkan fitur opsional disebut tunneled video playback. Paling sering ditemukan pada Android TV, pemutaran video terobosan menjanjikan keuntungan seperti lebih baik sinkronisasi audio/video, pemutaran halus dan pengurangan CPU beban bila dibandingkan dengan pemutaran video biasa.
b. Media Source composition
Merupakan salah satu fitur dari exomedia yang memungkin kan kita untuk mengolah source audio atau video yang akan di putar. Salah satu yang saya suka dengan Media Source composition ini memungkinkan kita untuk menampilkan Subtitle.
c. HLS ( HTTP Live Streaming ) support
HLS pertama kali di diimplementasikan oleh Apple.inc dimana dengan HTTP Live Streaming (HLS) ini memungkinkan kita utuk mendelivery sebuah media video dengan kualitas yang baik dan juga kita bisa memproteksi data video yang di proses dengan HLS ini jadi youtube juga menggunakan HLS. Dengan ExoPlayer ini juga memungkinkan kita untuk memproteksi data media yang di proses melalui HLS ini. Dengan begitu misalkan kita berurusan dengan video yang memiliki licency itu nanti bisa kita Filter DI rate gitu lah.
d. MediaSource Composition
Aplikasi Vitual Reality yang biasa di sebut dengan VR membuat kita seolah - olah merasakan suara yang benar - benar nyata, untuk itu proses rendering audio untuk aplikasi VR ini berbeda dengan teknik rendering yang biasanya. Dengan exoplayer kita juga bisa menggunakan extensi GVR untuk mengintegrasikan GvrAudioProcessor.
- PreviewSeekBar
Jika teman-teman menggunakan Google Play Film, mungkin teman-teman memperhatikan SeekBar animasi hebat ini dengan preview filmnya. Ternyata Rúben Sousa menerapkannya sebagai open source library.
Untuk materi lebih lengkapnya bisa download di bawah ini :
PPT : PMO2_TI16B_Kelompok1_ pertemuan11
Word : PMO2_TI16B_Kelompok1_ pertemuan11
Untuk contoh projeknya bisa di download melalui link dibawah :
https://drive.google.com/open?id=10iL_4WBLHNSBu7JvoSdjGl1rYYekSKQ7
Referensi :
- https://www.codepolitan.com/library-yang-wajib-kamu-coba-untuk-membuat-aplikasi-android-59b254b6d153c
- https://farizdotid.com/tutorial-cara-membuat-image-crop-android/