Sabtu, 24 Februari 2018

Apa Itu Gradle?

Di Android 3.0.1, seringkali terlihat kata2: "Building ... Gradle ...", "Gradle build running ...", dan semacamnya. Contohnya ketika kita membuat project baru, akan muncul dialog kecil seperti ini.
gradle build setelah membuat project baru

Dan di grup-grup programmer Android Studio di FB seringkali ada yang posting seputar error gradle, misalnya errornya seperti ini.

Jadi sebenarnya, apa itu gradle? Secara singkat, gradle adalah sebuah sistem terotomatisasi untuk membantu kita membuat aplikasi. Apa maksudnya otomatisasi di sini? Maksudnya adalah, kita tinggal menulis script (baris2 kode) di file2 gradle (build.gradle, settings.gradle, dsb), kemudian gradle akan membantu kita secara otomatis untuk mengubah kodingan yang kita tulis di android studio (yang terdiri dari file2 java & xml) menjadi sebuah aplikasi yang bisa dijalankan di hape, dalam bentuk file berekstensi apk.

Selain membantu kita membuat apk, gradle sangat membantu kita untuk menambahkan library ke project kita di android studio. Cukup tambahkan 1 atau 2 baris di file build.gradle, maka library siap kita pakai di project kita. Saya beri contoh seperti di bawah ini, untuk menggunakan library volley di project kita.

menambahkan library ke project menggunakan gradle


Penulis sendiri sempat bertahun2 membuat aplikasi menggunakan Eclipse. Penulis mengalami susahnya mengimpor library dalam bentuk file jar. Kadang2 file2 itu tidak cocok dan saling berbenturan satu sama lain, dan sangat sulit dilacak ketika terjadi error / konflik. Tapi dengan gradle, errornya akan lebih mudah diketahui penyebabnya dan dibetulkan. Seringnya android studio akan memberitahu kita lewat pesan error seperti gambar error gradle di awal artikel ini. Dan penulis sendiri sering mengalami error gradle, hanya tinggal klik di tulisan2 yang berwarna biru, meskipun kadang2 penulis juga harus mencari penyebab errornya di stackoverflow.

Selain membantu kita membuat apk & membantu kita menambahkan library ke project di android studio, masih banyak lagi fungsi gradle antara lain menyediakan settingan default untuk project baru di android studio, menambahkan folder untuk testing app di android studio, membantu kita membuat banyak varian apk dari 1 project di android studio, dan masih banyak lagi.


Pertanyaan lain yang sering ditanyakan oleh programmer pemula mengenai gradle adalah, apakah penggunaan gradle harus selalu online? Jawabannya, tidak. Gradle bisa dipakai secara offline, tanpa menggunakan internet. Tapi library dan semua yang diperlukan oleh gradle harus didownload minimal sekali lewat android studio , baru bisa digunakan oleh gradle secara offline. Lebih jauh mengenai ini akan penulis terangkan jika ada yang bertanya di kolom komentar.

Demikian artikel pintar-android.com mengenai gradle. Semoga be
rmanfaat. Like page pintar-android.com di FB untuk mendapatkan artikel2 yang pastinya berguna di dunia pemrograman khususnya android.



Tersedia buku-buku untuk belajar pemrograman Android.

buku pertama, menginstall Android Studio: https://play.google.com/store/books/details?id=EOufCwAAQBAJ . Buku fisik di https://www.tokopedia.com/buku-meidika/koding-android-untuk-pemula-buku-pertama


buku kedua, membuat recyclerview yang menampilkan gambar2 dari internet menggunakan json: https://play.google.com/store/books/details?id=b-boDAAAQBAJ . Buku fisik di https://www.tokopedia.com/buku-meidika/koding-android-untuk-pemula-buku-2


buku registrasi user, membuat fitur login & register: https://play.google.com/store/books/details?id=FHMqDwAAQBAJ


kalau sudah beli, bisa dilihat di hape pake app google books, bisa dilihat di browser (misal chrome) di books.google.com -> My Library .


Tersedia juga DVD Android Studio 3.0.1 di tokopedia: 

https://www.tokopedia.com/buku-meidika/dvd-android-studio-3-0-jdk-32-bit-64-bit

Masalah2 Yang Dihadapi Freelancer

Programmer android banyak yang bekerja sebagai freelancer. Berikut ini masalah2 yang bisa dihadapi ketika bekerja sebagai freelancer, dalam bentuk komik.


masalah2-kerja-jadi-freelancer
Diterjemahkan dari https://blog.toggl.com/freelancing-problems-dinosaurs/Like page pintar-android.com di FB untuk mendapatkan artikel2 yang pastinya berguna di dunia pemrograman. 



Tersedia buku-buku untuk belajar pemrograman Android.

buku pertama, menginstall Android Studio: https://play.google.com/store/books/details?id=EOufCwAAQBAJ . Buku fisik di https://www.tokopedia.com/buku-meidika/koding-android-untuk-pemula-buku-pertama

buku kedua, membuat recyclerview yang menampilkan gambar2 dari internet menggunakan json: https://play.google.com/store/books/details?id=b-boDAAAQBAJ . Buku fisik di https://www.tokopedia.com/buku-meidika/koding-android-untuk-pemula-buku-2


buku registrasi user, membuat fitur login & register: https://play.google.com/store/books/details?id=FHMqDwAAQBAJ


kalau sudah beli, bisa dilihat di hape pake app google books, bisa dilihat di browser (misal chrome) di books.google.com -> My Library .

Tersedia juga DVD Android Studio 3.0.1 di tokopedia: 

https://www.tokopedia.com/buku-meidika/dvd-android-studio-3-0-jdk-32-bit-64-bit

Kamis, 15 Februari 2018

20+ Library Android Untuk Anda Coba

Artikel kali ini membahas mengenai macam2 library Android yang bisa menyingkat waktu pengerjaan aplikasi kita. Apa itu library? Menurut laman Google Developer, library adalah
"Secara struktur sama dengan modul aplikasi Android biasa. Bisa mencakup semua yang dibutuhkan untuk membuat aplikasi, termasuk source code, file2 resource, dan Android manifest. Tapi library tidak di-compile menjadi bentuk file APK yang bisa dijalankan di hape. Library dicompile menjadi file Android Archive (AAR) yang bisa digunakan sebagai dependency untuk modul aplikasi Android. Tidak seperti file JAR, AAR bisa berisi resource Android dan file manifest, yang membolehkan Anda memasukkan resource seperti layout dan drawable sebagai tambahan untuk class2 dan method2 Java."
Kapan kita memakai library? laman yang sama menyebutkan:

  1. Ketika Anda membuat aplikasi yang banyak dan menggunakan beberapa komponen yang persis sama, misalnya Activity, service atau layout UI.
  2. Ketika Anda membuat sebuah aplikasi yang punya beberapa variasi APK, misalnya versi gratis dan berbayar, dan Anda perlu komponen inti yang sama di kedua file APK tersebut.

Penulis sendiri menganut prinsip "do not reinvent the wheel", atau bisa diartikan "jangan membuang waktu menulis kodingan yang sudah ada ditulis oleh orang lain". Lebih lanjut mengenai memilih library ada di artikel Cara Memilih Library / Pustaka Android Untuk Aplikasi Kita .

Dan berikut ini daftar 20 lebih library yang berguna untuk dipakai di aplikasi android:


1. Lottie

Ini adalah library yang menerima inputan JSON berisi data animasi Adobe After Effects dan menampilkannya di hape android / secara native, sehingga hampir tidak ada bedanya dengan animasi yang dibuat pakai Java / Swift. Juga ada aplikasi contohnya yg tersedia di Google Play Store.
Sudah ada 7500 pengguna Github yang menjadikan library ini favorit mereka. Mereka tidak mungkin salah pilih library, kan? :D



2. Toasty 

Ini adalah library untuk membuat Toast (popup pesan ke user) yang bisa dikustom. Seperti yang dikatakan sang pembuatnya:
"Toast biasa, tapi dicampur obat kuat."



3. StyleableToast

Ini adalah library lain untuk kustomisasi Toast. Pembuatnya bilang, library ini menambahkan
"bermacam2 pilihan tampilan yang menambahkan kesan unik di app Anda dan UX-nya! Ubah tampilan toast baik melalui kodingan maupun lewat styles.xml!"



4. Store

Store adalah library untuk caching dan memuat data secara asynchronous. Menurut dokumentasinya:
"Store adalah class yang menyederhanakan pengambilan, penguraian, penyimpanan, dan pemakaian data di aplikasi Anda. Satu Store mirip dengan sebuah Repository, sekaligus menyediakan API Reactive yang dibangun dengan RxJava dan menerapkan aliran data satu arah (unidireksional)."
Dokumentasinya sangat lengkap dan library ini pasti layak dicoba. Anda bisa menggunakan library ini untuk mengecek misalnya aliran permintaan data, caching dan parsing.


5. PreviewSeekBar

Jika Anda pernah memakai Google Play Movies, Anda mungkin pernah melihat seekbar (bilah pencarian) yang dilengkapi dengan preview film. Programmer bernama RĂºben Sousa menyediakan librarynya di github. GIF dibawah ini menampilkan cara kerjanya dengan jelas. Jika app Anda berupa pemutar film, Anda benar2 harus mencobanya!



6. Chuck

Jika Anda memakai OkHttp, library ini membantu menangkap dan menyimpan semua request (permintaan) HTTP dan response-nya di aplikasi Anda. Library ini juga menyediakan tampilan untuk memeriksa isi request-response tadi.



7. CoordinatorTabLayout

CoordinatorTabLayout adalah komponen kustom yang terdiri dari beberapa bagian. Sederhananya, library ini menggabungkan TabLayout dan CoordinatorLayout. Cara kerjanya seperti GIF dibawah ini:




8. boxing

Boxing dipakai untuk memilih file2 multimedia. Dengan library ini, Anda bisa:
1. memilih gambar (satu atau beberapa sekaligus)
2. melihat preview gambar & crop / memotong gambar
Library ini juga mendukung GIF, pemilihan video, kompresi gambar dan tampilan kustom seperti ditunjukkan di gambar di bawah ini.



9. excelPanel

Sederhananya, library ini berupa RecyclerView dua dimensi. Library ini bisa menampilkan data historikal (data yg sudah ada) maupun data2 yang akan diinput.



10. Horizontal Calendar

Library ini memakai RecyclerView untuk menampilkan kalender secara horizontal, yang menganut prinsip Material Design.



11. CameraFragment

CameraFragment memakai komponen Fragment untuk memudahkan Anda menggunakan kamera hape di aplikasi Anda. Ditulis di keterangannya, library ini:
"menampilkan preview kamera secara langsung, dan menyediakan API yang simpel untuk memotret atau mengatur settingan hape. Anda dapat mengatur tampilan, layout dan memakai kamera hape menggunakan CameraFragment."



12. AwesomeBar

Ini adalah salah satu library keren buatan Florent Champigny. Library ini menggunakan pendekatan baru untuk mendesain top bar aplikasi, yang kita tahu memakai komponen ActionBar/Toolbar. Library ini juga mengatur DrawerLayout mirip Gmail. Anda bisa melihat cara kerjanya di gambar di bawah ini.



13. ArcNavigationView

Library ini memakai NavigationView dari Android Design Support Library. ArcNavigationView tampil beda dengan tepian yang melengkung.



14. ShimmerRecyclerView

Library ini adalah RecyclerView yang dikustom, menampilkan tampilan yang terkesan "berkerlip" untuk menandakan konten sedang loading (dimuat). Library ini juga punya adapter bawaan / built-in, untuk mengatur "kerlipan"nya.



15. Android-SwitchIcon

"Penerapan ikon switch (komponen mati/nyala) bergaya launcher Google."
Library ini menggunakan AppCompatImageView dan membuat Anda bisa memakai ikon berupa vektor / gambar untuk ditampilkan di komponen SwitchIconView menggunakan atribut app:srcCompat.



16. CounterFab

Library ini menampilkan FloatingActionButton (FAB) yang dilengkapi dengan angka (counter). Posisi FAB-nya di kanan atas. Anda dapat mengunduh aplikasi demo-nya di Google Play.



17. FadingTextView

Library ini membuat Anda bisa menampilkan TextView yang bisa berubah tampilan secara otomatis setiap beberapa detik sekali.



18. Bridge

"Bridge adalah library networking HTTP yang simpel tapi powerful untuk android. Library ini punya fitur API berantai, didukung oleh class URLConnection Java untuk kompatibilitas dan kecepatan maksimal."
Library ini punya dokumentasi yang sangat lengkap dan pastinya layak dicoba.


19. Ason

Library kedua bikinan Aidan Follestad. Ide dasarnya adalah untuk menyederhanakan interaksi dengan JSON. Library ini "juga membuat (de)serialisasi tidak susah.". Deserialisasi adalah pengubahan data dari JSON ke data yang bisa diolah dengan java, misalnya POJO. Dokumentasinya cukup lengkap. Anda bisa melihat2 library ini di https://github.com/afollestad/ason .


20. ObjectBox

Greenrobot adalah grup programmer yang mengembangkan GreenDAO dan EventBus. Sekarang mereka mencoba membuat jenis database baru untuk obyek2 java yang fokus di performa. Ini keterangan Greenrobot mengenai ObjectBox:
"Performa adalah alasan utama kami menciptakan ObjectBox. Sebelumnya, kami menciptakan greenDAO, ORM (Object/Relational Mapper - komponen pemetaan obyek/relasi) tercepat untuk Android dan SQLite. Sejak rilis pertamanya di tahun 2011, kami mendapatkan banyak tambahan wawasan mengenai penyimpanan obyek dan keterbatasan performa SQLite. Kami menyadari, untuk meningkatkan performa di hape secara signifikan, kami perlu menyentuh intinya dan membangun database yang didesain khusus untuk obyek."
Lebih detail tentang ObjectBox di: http://greenrobot.org/announcement/introducing-objectbox-beta/
Perlu diperhatikan, ObjectBox saat ini masih versi beta.


21. Material About

Library ini membantu Anda menyiapkan tampilan About Me (Tentang Saya) untuk mengenalkan Anda ke pengguna aplikasi Anda.



Demikianlah daftar 20 lebih library yang dapat Anda gunakan di aplikasi Anda. Daftar ini disadur dari https://medium.freecodecamp.org/25-new-android-libraries-which-you-definitely-want-to-try-at-the-beginning-of-2017-45878d5408c0 . Semoga artikel kali ini berguna. Like page pintar-android.com di FB untuk mendapatkan artikel2 yang pastinya berguna di dunia pemrograman. 




Tersedia buku-buku untuk belajar pemrograman Android.

buku pertama, menginstall Android Studio: https://play.google.com/store/books/details?id=EOufCwAAQBAJ . Buku fisik di https://www.tokopedia.com/buku-meidika/koding-android-untuk-pemula-buku-pertama


buku kedua, membuat recyclerview yang menampilkan gambar2 dari internet menggunakan json: https://play.google.com/store/books/details?id=b-boDAAAQBAJ . Buku fisik di https://www.tokopedia.com/buku-meidika/koding-android-untuk-pemula-buku-2


buku registrasi user, membuat fitur login & register: https://play.google.com/store/books/details?id=FHMqDwAAQBAJ



kalau sudah beli, bisa dilihat di hape pake app google books, bisa dilihat di browser (misal chrome) di books.google.com -> My Library .


Tersedia juga DVD Android Studio 3.0.1 di tokopedia: 
https://www.tokopedia.com/buku-meidika/dvd-android-studio-3-0-jdk-32-bit-64-bit

Sabtu, 10 Februari 2018

Mari Memakai ConstraintLayout

Kali ini kita akan belajar ConstraintLayout, yaitu salah satu tipe komponen untuk layout di Android Studio. Tipe layout ini bisa menggantikan RelativeLayout dan LinearLayout, untuk membuat layout yang lebih efisien.

Dijelaskan di https://developer.android.com/training/constraint-layout/index.html, constraintlayout memungkinkan kita untuk membuat layout yang berukuran besar dan kompleks tanpa membuat grup layout lagi di dalam ConstraintLayout. Grup layout misalnya RelativeLayout, ConstraintLayout, dan ConstraintLayout sendiri.

Simak video tutorialnya berikut ini.




Like page pintar-android.com di FB untuk mendapatkan artikel2 yang pastinya berguna di dunia pemrograman. 




Tersedia buku-buku untuk belajar pemrograman Android.

buku pertama, menginstall Android Studio: https://play.google.com/store/books/details?id=EOufCwAAQBAJ . Buku fisik di https://www.tokopedia.com/buku-meidika/koding-android-untuk-pemula-buku-pertama


buku kedua, membuat recyclerview yang menampilkan gambar2 dari internet menggunakan json: https://play.google.com/store/books/details?id=b-boDAAAQBAJ . Buku fisik di https://www.tokopedia.com/buku-meidika/koding-android-untuk-pemula-buku-2


buku registrasi user, membuat fitur login & register: https://play.google.com/store/books/details?id=FHMqDwAAQBAJ



kalau sudah beli, bisa dilihat di hape pake app google books, bisa dilihat di browser (misal chrome) di books.google.com -> My Library .

Kamis, 08 Februari 2018

Menyelamatkan Tuan Putri Menggunakan 8 Bahasa Pemrograman

Bagaimana caranya menyelamatkan Tuan Putri menggunakan 8 bahasa pemrograman?
Diterjemahkan dari https://toggl.com/programming-princessLike page pintar-android.com di FB untuk mendapatkan artikel2 yang pastinya berguna di dunia pemrograman. 



Tersedia buku-buku untuk belajar pemrograman Android.

buku pertama, menginstall Android Studio: https://play.google.com/store/books/details?id=EOufCwAAQBAJ . Buku fisik di https://www.tokopedia.com/buku-meidika/koding-android-untuk-pemula-buku-pertama

buku kedua, membuat recyclerview yang menampilkan gambar2 dari internet menggunakan json: https://play.google.com/store/books/details?id=b-boDAAAQBAJ . Buku fisik di https://www.tokopedia.com/buku-meidika/koding-android-untuk-pemula-buku-2


buku registrasi user, membuat fitur login & register: https://play.google.com/store/books/details?id=FHMqDwAAQBAJ


kalau sudah beli, bisa dilihat di hape pake app google books, bisa dilihat di browser (misal chrome) di books.google.com -> My Library .

Tersedia juga DVD Android Studio 3.0.1 di tokopedia: 

https://www.tokopedia.com/buku-meidika/dvd-android-studio-3-0-jdk-32-bit-64-bit

Sabtu, 03 Februari 2018

Mari Mulai Belajar Kotlin

Di artikel kali ini, akan dijelaskan bahasa pemrograman yang sedang nge-tren saat ini, yaitu Kotlin. Kalau kamu seorang programmer Android, pasti minimal pernah dengar tentang bahasa yg satu ini. Kotlin saat ini disupport secara resmi oleh Google sebagai bahasa pemrograman untuk membuat aplikasi android, bersanding dengan Java. Di artikel ini kita akan menggunakan Android Studio 3.0.1, jadi untuk yg belum update Android Studionya ke versi ini, diupdate dulu ya...




Ada 3 cara untuk memakai Kotlin di Android Studio, yaitu membuat project baru dengan Kotlin, menambahkan Kotlin ke project (java) yg sudah ada, dan mengubah project yang menggunakan java ke Kotlin. Kita akan pelajari satu2.



Membuat project baru dengan Kotlin

Buka Android Studio, klik "Start a new Android Studio project".
buka android studio

Isi Application name: Project Kotlin, Company domain: pintar-android.com, Project locationnya terserah, lalu yg paling penting centang "Include Kotlin support". Selanjutnya klik Next.
Centang Include Kotlin support

Di halaman berikutnya, pilih API 15 lalu klik Next.
pilih API 15

Di halaman berikutnya, klik Basic Activity, lalu klik Next.
Pilih Basic Activity
Langkah terakhir, di halaman berikutnya klik tombol Finish.
klik tombol Finish
Tunggu sampai loadingnya selesai, akan muncul layar seperti ini.
layar project Kotlin
Bisa dilihat di gambar di atas, MainActivity dan content_main.xml sudah terbuka secara otomatis. Klik tab MainActivity.kt (yang dipanah digambar di bawah ini), maka kita bisa melihat kodingan berbahasa Kotlin.
Klik tab MainActivity.kt

Kalau kita perhatikan lagi, nama filenya bukan MainActivity.java tapi MainActivity.kt. File2 berbahasa Kotlin berekstensi .kt. Jika Anda penasaran dengan perbedaannya kalau pakai bahasa Java, Anda bisa melihat perbedaannya di gambar berikut ini.
Kotlin vs Java
Yang kiri file kotlin (MainActivity.kt), yang kanan file java (MainActivity.java). Bisa dilihat kodingan kotlin lebih singkat. Kalau kodingan MainActivity.kt 21 baris, kodingan MainActivity.java ada 52 baris.

Oh ya. Hampir lupa. Selamat! Anda sudah membuat project pertama Anda yang berbahasa Kotlin :D. Bisa disimpulkan, untuk membuat project baru dengan Kotlin, bedanya dengan membuat project baru berbahasa java adalah hanya di bagian ini:
Centang include Kotlin support
Kita cuma perlu mencentang "Include Kotlin support".

Menambahkan Kotlin ke project (java) yang sudah ada

Cara lain untuk memakai Kotlin adalah dengan menambahkan file Kotlin ke project java yg sudah ada. Misal saya punya project Java: HelloKotlin. Saya tinggal membuka project tersebut di Android Studio, lalu saya bisa dobel klik folder app->dobel klik folder java->Klik kanan di nama package->New->Activity->Empty Activity seperti di gambar di bawah ini. 
Membuat empty activity
Cara di atas sama dengan ketika kita membuat Empty Activity berbahasa java. Bedanya dengan Kotlin baru kelihatan di layar yg muncul. Scroll ke bawah sampai kelihatan "source language", lalu pilih Kotlin seperti gambar di bawah ini.
Pilih source language Kotlin
Klik Finish, maka file activity Main2Activity.kt langsung jadi beserta layoutnya.
activity dan layout berbahasa kotlin
Saya sudah membuat beberapa modifikasi lain, dan membuat branch baru di repo HelloKotlin. bisa dilihat di branch pakai_class_kotlin. di branch tersebut, Main2Activity.kt yang berbahasa kotlin bisa dipanggil oleh MainActivity.java yang berbahasa java.

Kesimpulannya, kita membuat activity Kotlin hanya dengan memilih "source language" seperti di langkah sebelumya. Tentu saja kita bisa membuat class dari awal pakai Kotlin, tapi sebagai pemula lebih mudah jika menggunakan template yang sudah disediakan Android Studio, seperti Empty Activity yang sudah kita praktekkan.

Mengubah project yang menggunakan java ke Kotlin

Cara ketiga untuk memakai Kotlin di Android Studio adalah dengan mengubah file java yg sudah ada menjadi file Kotlin. Caranya cukup mudah. Klik di file javanya, lalu klik 
Code->Convert Java File to Kotlin File seperti gambar di bawah ini.
mengubah activity java ke kotlin
Kalau ada dialog seperti gambar di bawah ini, klik "OK".
dialog ketika mengubah activity java ke kotlinKemudian file MainActivity.java akan berubah menjadi MainActivity.kt seperti gambar di bawah ini.
hasil convert java ke kotlin



Di artikel ini kita sudah belajar 3 cara untuk memakai Kotlin di Android Studio. Semoga artikel ini berguna :D

Jika ada pertanyaan / feedback atau pemikiran apapun, Anda bisa menuliskannya di kolom komentar di bawah ini. Like page pintar-android.com di FB untuk mendapatkan artikel2 yang pastinya berguna di dunia pemrograman. 



Tersedia buku-buku untuk belajar pemrograman Android.

buku pertama, menginstall Android Studio: https://play.google.com/store/books/details?id=EOufCwAAQBAJ . Buku fisik di https://www.tokopedia.com/buku-meidika/koding-android-untuk-pemula-buku-pertama

buku kedua, membuat recyclerview yang menampilkan gambar2 dari internet menggunakan json: https://play.google.com/store/books/details?id=b-boDAAAQBAJ . Buku fisik di https://www.tokopedia.com/buku-meidika/koding-android-untuk-pemula-buku-2


buku registrasi user, membuat fitur login & register: https://play.google.com/store/books/details?id=FHMqDwAAQBAJ



kalau sudah beli, bisa dilihat di hape pake app google books, bisa dilihat di browser (misal chrome) di books.google.com -> My Library .


Tersedia juga DVD Android Studio 3.0.1 di tokopedia: 

https://www.tokopedia.com/buku-meidika/dvd-android-studio-3-0-jdk-32-bit-64-bit

Bagaimana Cara Bayar Akun Google Play Console?

Artikel kali ini akan membahas mengenai bagaimana cara membayar akun Google Play Console. Programmer android yang ingin aplikasinya didownlo...