SlideShare a Scribd company logo
I am using
Pemanfaatan Teknologi Android
untuk Solusi Permasalahan
Bangsa Indonesia
Pembicara : Arif Akbarul Huda
One Day Android Workshop by IEEE Amikom Student Branch | 24/09/2016 | STMIK AMIKOM YOGYAKARTA
perkenalan
Arif Akbarul Huda
Programmer | Lecture | Book writer | Researcher
Follow me @omayib
Agenda
● Perkenalan
● Cakupan Teknologi Android
● Penerapan Teknologi Android
● Bedah Teknologi
Stop pembajakan software!
Pemanfaatan Teknologi Android
Cakupan Teknologi Android
Mobile OS distribution
● Android : Java, xml
● Performa sangat diutamakan
● User experiece sesuai standar
● Mudah mengakses fitur-fitur
native seperti sensor, kamera,
wifi, dsb
● Multiple platform dalam sekali
pengembangan
● Dapat mengakses fitur native
● Mendukung semua platform
● Pembaruan secara cepat
3 langkah awal menjadi pengembang aplikasi android
3. Setup peralatan tempur
PC / laptop Android Studio Perangkat
Android
Koneksi Internet
2. Referensi Belajar
● Referensi utama : www.developer.android.com
( design | develop | training | distribute )
● Code review from Github
https://github.com/codepath/android_guides/wiki/Sample-A
● Free online course
https://www.udacity.com/courses/android
● Stackoverflow, teman dan komunitas
System Requirements
Windows
● Microsoft® Windows®
7/8/10 (32- or 64-bit)
● 2 GB RAM minimum, 8 GB
RAM recommended
● 2 GB of available disk space
minimum,
● 4 GB Recommended (500
MB for IDE + 1.5 GB for
Android SDK and emulator
system image)
● 1280 x 800 minimum screen
resolution
● JDK 8
● For accelerated emulator:
64-bit operating system and
Intel® processor with
support for Intel® VT-x,
Intel® EM64T (Intel® 64),
and Execute Disable (XD)
Bit functionality
Mac
● Mac® OS X® 10.8.5 or
higher, up to 10.11.4 (El
Capitan)
● 2 GB RAM minimum, 8 GB
RAM recommended
● 2 GB of available disk space
minimum,
● 4 GB Recommended (500
MB for IDE + 1.5 GB for
Android SDK and emulator
system image)
● 1280 x 800 minimum screen
resolution
● JDK 6
Linux
● GNOME or KDE desktop
● 64-bit distribution capable
of running 32-bit
applications
● GNU C Library (glibc) 2.11
or later
● 2 GB RAM minimum, 8 GB
RAM recommended
● 2 GB of available disk space
minimum,
● 4 GB Recommended (500
MB for IDE + 1.5 GB for
Android SDK and emulator
system image)
● 1280 x 800 minimum screen
resolution
● JDK 8
1. ACTION!
Penerapan
Teknologi Android
(7 Masalah dan Solusinya)
7. Transportation
Pemanfaatan Teknologi Android
Pemanfaatan Teknologi Android
6. Productivity
Pemanfaatan Teknologi Android
5. Travel & Communication
Pemanfaatan Teknologi Android
4. Entertainment & Games
Pemanfaatan Teknologi Android
3. Indoor Positioning
2. Modern Education
1. Your Problem Solution Idea
Bedah Teknologi
sistem pemesanan ojek/taksi online
Alur pada umumnya
Teknologi yang digunakan pada sistem pemesanan ojek / taksi melalui aplikasi android
secara garis besar sama.
1. calon penumpang (customer) menentukan posisi penjemputan dan lokasi tujuan
2. driver mendapatkan notifikasi, menjelaskan bahwa ada calon penumpang baru.
3. driver melakukan bidding
4. customer diberi kesempatan untuk memilih, menolak atau menyetujui bidding dari driver.
5. driver mendapatkan notifikasi, menjelaskan bahwa bidding yang baru saja dilakukan
diterima atau ditolak.
6. jika diterima, driver akan melanjutkan ke tahap penjemputan
7. jika customer berhasil dijumpai, driver segera memulai perjalanan. Pada saat yg
bersamaan, aplikasi akan merekam direction yang dilalui.
8. setelah sampai tujuan, driver mengakhiri perjalanan. Customer membayar sesuai
kesepakatan.
9. customer diberi kesempatan memberikan feedback.
Infrastruktur sistem
Teknologi di dalam server
1. Restful API webservice
API Engine database
iPhone
Webpage
Android
● API Engine : PHP, Ruby, Go, Scala, NodeJS,
Python
● Database : MySQL, MariaDB, MongoDB,
postgree.
Alternatif bahasa pemrogaman
Pemanfaatan Teknologi Android
2. Websocket vs HTTP
HTTP
server
‘halo’
Any message?
Joko say ‘halo’ joko
budi
Websocket
server
‘halo’
Joko say ‘halo’
Apa kabar?
Budi say ‘apa kabar?’
budi
joko
HTT
P
Websocket
3. Push Notification
database
server
Push notification
engine
client
1
2
3
4
a
b
1) perangkat client (android/lainnya) melakukan
registrasi dgn cara mengirim senderi-id dan
application-id ke Push Notification (PN)
Server
2) PN server mengembalikan registration-id ke
perangkat client.
3) Setelah mendapatkan regsitration-id, perangakt
client mengirim ke server sendiri.
4) Server kita menyimpan registration-id kedalam
database untuk digunakan kemudian.
a) Pada saat fitur PN dibutuhkan, server kita akan
mengirim message ke PN server bersama
registration-id device yang dituju
b) PN server akan melanjutkan pengiriman
message ke perangkat client yang registration-
idnya sesuai.
Teknologi di dalam Aplikasi
Gambar arsitektur aplikasi

More Related Content

Pemanfaatan Teknologi Android

  • 1. I am using Pemanfaatan Teknologi Android untuk Solusi Permasalahan Bangsa Indonesia Pembicara : Arif Akbarul Huda One Day Android Workshop by IEEE Amikom Student Branch | 24/09/2016 | STMIK AMIKOM YOGYAKARTA
  • 2. perkenalan Arif Akbarul Huda Programmer | Lecture | Book writer | Researcher Follow me @omayib
  • 3. Agenda ● Perkenalan ● Cakupan Teknologi Android ● Penerapan Teknologi Android ● Bedah Teknologi
  • 8. ● Android : Java, xml ● Performa sangat diutamakan ● User experiece sesuai standar ● Mudah mengakses fitur-fitur native seperti sensor, kamera, wifi, dsb ● Multiple platform dalam sekali pengembangan ● Dapat mengakses fitur native ● Mendukung semua platform ● Pembaruan secara cepat
  • 9. 3 langkah awal menjadi pengembang aplikasi android
  • 10. 3. Setup peralatan tempur PC / laptop Android Studio Perangkat Android Koneksi Internet
  • 11. 2. Referensi Belajar ● Referensi utama : www.developer.android.com ( design | develop | training | distribute ) ● Code review from Github https://github.com/codepath/android_guides/wiki/Sample-A ● Free online course https://www.udacity.com/courses/android ● Stackoverflow, teman dan komunitas
  • 12. System Requirements Windows ● Microsoft® Windows® 7/8/10 (32- or 64-bit) ● 2 GB RAM minimum, 8 GB RAM recommended ● 2 GB of available disk space minimum, ● 4 GB Recommended (500 MB for IDE + 1.5 GB for Android SDK and emulator system image) ● 1280 x 800 minimum screen resolution ● JDK 8 ● For accelerated emulator: 64-bit operating system and Intel® processor with support for Intel® VT-x, Intel® EM64T (Intel® 64), and Execute Disable (XD) Bit functionality Mac ● Mac® OS X® 10.8.5 or higher, up to 10.11.4 (El Capitan) ● 2 GB RAM minimum, 8 GB RAM recommended ● 2 GB of available disk space minimum, ● 4 GB Recommended (500 MB for IDE + 1.5 GB for Android SDK and emulator system image) ● 1280 x 800 minimum screen resolution ● JDK 6 Linux ● GNOME or KDE desktop ● 64-bit distribution capable of running 32-bit applications ● GNU C Library (glibc) 2.11 or later ● 2 GB RAM minimum, 8 GB RAM recommended ● 2 GB of available disk space minimum, ● 4 GB Recommended (500 MB for IDE + 1.5 GB for Android SDK and emulator system image) ● 1280 x 800 minimum screen resolution ● JDK 8
  • 20. 5. Travel & Communication
  • 26. 1. Your Problem Solution Idea
  • 29. Alur pada umumnya Teknologi yang digunakan pada sistem pemesanan ojek / taksi melalui aplikasi android secara garis besar sama. 1. calon penumpang (customer) menentukan posisi penjemputan dan lokasi tujuan 2. driver mendapatkan notifikasi, menjelaskan bahwa ada calon penumpang baru. 3. driver melakukan bidding 4. customer diberi kesempatan untuk memilih, menolak atau menyetujui bidding dari driver. 5. driver mendapatkan notifikasi, menjelaskan bahwa bidding yang baru saja dilakukan diterima atau ditolak. 6. jika diterima, driver akan melanjutkan ke tahap penjemputan 7. jika customer berhasil dijumpai, driver segera memulai perjalanan. Pada saat yg bersamaan, aplikasi akan merekam direction yang dilalui. 8. setelah sampai tujuan, driver mengakhiri perjalanan. Customer membayar sesuai kesepakatan. 9. customer diberi kesempatan memberikan feedback.
  • 32. 1. Restful API webservice API Engine database iPhone Webpage Android
  • 33. ● API Engine : PHP, Ruby, Go, Scala, NodeJS, Python ● Database : MySQL, MariaDB, MongoDB, postgree. Alternatif bahasa pemrogaman
  • 35. 2. Websocket vs HTTP HTTP server ‘halo’ Any message? Joko say ‘halo’ joko budi Websocket server ‘halo’ Joko say ‘halo’ Apa kabar? Budi say ‘apa kabar?’ budi joko HTT P Websocket
  • 36. 3. Push Notification database server Push notification engine client 1 2 3 4 a b 1) perangkat client (android/lainnya) melakukan registrasi dgn cara mengirim senderi-id dan application-id ke Push Notification (PN) Server 2) PN server mengembalikan registration-id ke perangkat client. 3) Setelah mendapatkan regsitration-id, perangakt client mengirim ke server sendiri. 4) Server kita menyimpan registration-id kedalam database untuk digunakan kemudian. a) Pada saat fitur PN dibutuhkan, server kita akan mengirim message ke PN server bersama registration-id device yang dituju b) PN server akan melanjutkan pengiriman message ke perangkat client yang registration- idnya sesuai.
  • 37. Teknologi di dalam Aplikasi Gambar arsitektur aplikasi